এক্সএনএ-তে কেবল কয়েকটি নির্দিষ্ট সংস্থান নিষ্পত্তি করছেন?


13

এক্সএনএ ৪.০-তে কন্টেন্টম্যানেজারের কেবল একটি আনলোড () পদ্ধতি রয়েছে যা সমস্ত সম্পদ আনলোড করে।

আমি কিছু "গ্লোবাল" সম্পদ রাখতে চাই যা সর্বদা লোড হয়, তবে তারপরে আমি প্রতি-স্তরের সম্পদগুলি চাই যা স্তরটি পরিবর্তিত হলে আনলোড করা উচিত।

লেভেল। সি ক্লাসের অংশ হিসাবে আমার কি কনটেন্ট ম্যানেজারের দ্বিতীয় তাত্ক্ষণিক তৈরি করা উচিত? বা আমার কি গেম.সন্টেন্ট ব্যবহার করা উচিত এবং তারপরে কল করা উচিত I আমি যে সম্পদগুলি লোড করি সেগুলি সম্পর্কে আলোচনা করুন? বা এখানে আমার বর্ণিত রেডএসেট ফাংশনের উপরে আমার নিজস্ব কন্টেন্টম্যানেজার তৈরি করা উচিত ?

উত্তর:


12

এর দ্বিতীয় উদাহরণ তৈরি করুন ContentManager

এই দৃষ্টান্তগুলি ভাগ করে নেওয়া এবং পুনঃব্যবহার করা হওয়ায় আপনার কোনও বিষয়বস্তু ম্যানেজার (ডিফল্ট বাস্তবায়ন ব্যবহার করে) থেকে লোড করা উচিত নয় Dispose()

কন্টেন্টম্যানেজারের নিজস্ব সংস্করণ তৈরি করা এক ধরণের অর্থকোনাল। যেভাবেই আপনি কন্টেন্টম্যানেজারের দ্বিতীয় উদাহরণ তৈরি করবেন (বা এটি থেকে উত্পন্ন একটি শ্রেণি)। সুতরাং যদি বিদ্যমান বাস্তবায়ন আপনার উদ্দেশ্য অনুসারে হয় - তবে এটি ব্যবহার করুন, অন্যথায় আপনি কী পরিবর্তন করতে চান তা ওভাররাইড করে।

অবশ্যই, যদি আপনার গেমটি তুলনামূলকভাবে ছোট হয় - তবে আপনি যদি কেবলমাত্র একটি কনটেন্ট ম্যানেজার ব্যবহার করেন এবং স্তরগুলির মধ্যে সামগ্রী আনলোড করার ক্ষেত্রে বিরক্ত না করেন তবে তা আসলেই কিছু যায় আসে না।


5
+1 এবং পরের বার এখানে লিঙ্ক করার জন্য আমার কাছে একটি অনুস্মারক মনে করে যে কেউ আমাকে বলার চেষ্টা করে যে সম্পদ পরিচালকদের জন্য সিঙ্গলটন প্যাটার্নটি কত দুর্দান্ত।

আমি এক্সএনএ ওয়েব সাইটে গেম স্টেট ম্যানেজমেন্ট ডেমোটিও পেয়েছি যা ঠিক এটি ব্যবহার করে (1 গ্লোবাল কন্টেন্ট ম্যানেজার এবং এটির প্রয়োজনীয় স্ক্রিনগুলিতে 2 য়)। খুব স্বজ্ঞাত নয়, তবে এটি করব :)
মাইকেল স্টুম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.