2 ডি বা 3 ডি-তে, কোনও সত্তা উপাদান সিস্টেমের (ইসিএস) কমপক্ষে জিইউআই সিস্টেমে অ্যাক্সেস থাকা উচিত, যদি এটি একই ইসিএসের অংশ না হয়।
ব্যক্তিগতভাবে, আমি দুটি মিশ্রিত না। জিইউআইয়ের কোডের পুনঃব্যবহারযোগ্যতা কেবলমাত্র শীর্ষ স্তরে ঘটে। মাউস / কীবোর্ডকে প্রতিক্রিয়া জানানো, রেন্ডারিং ইত্যাদি। বিভিন্ন বোতামগুলি যে ক্রিয়াকলাপগুলি গ্রহণ করে বা নির্দিষ্ট তালিকাগুলি প্রদর্শিত তথ্যগুলি এমন কিছু নয় যা পুনরায় ব্যবহারের জন্য যথেষ্ট জেনেরিক করা যায়।
উদাহরণস্বরূপ, আমি গুই সত্তার জন্য উপাদান কল্পনা ভালো কিছু হবে হবে position
, render
এবংgui
। যেখানে জিইউআই উপাদান জিইউআই সত্তা গ্রহণ করে তার ধরণের ক্রিয়া সংজ্ঞায়িত করবে। যাইহোক, এই ক্রিয়াটি বেশ অনন্য এবং প্রসঙ্গে নির্দিষ্ট হতে চলেছে। সিস্টেমটিতে এটি ফলাফল দেয় যে জিইউআই উপাদানগুলি খুব বড় এবং মূলত প্রতিটি জিইউআই ফাংশন (লোড গেম, সেভ গেম, সার্ভার সন্ধান করা ইত্যাদি) পরিচালনা করতে ডিজাইন করা হয়েছে hand অগোছালো মনে হচ্ছে।
আমি প্রতিটি জিইউআই "স্ক্রিন" এর জন্য একটি স্ট্যান্ডার্ড ক্লাস ফাইল করতে পছন্দ করব। সেই স্ক্রিনের জন্য সমস্ত কার্যকারিতা এক জায়গায় রাখুন (একটি সাধারণ কার্যকারিতা শ্রেণীর উল্লেখ সহ)। এটি পরিচালনা করা অনেক পরিষ্কার এবং সহজ।
তবে, যেমনটি আমি বলেছি, ইসিএসের জিইউআই সিস্টেমে অ্যাক্সেস থাকা উচিত। এটির সিস্টেমগুলিতে সত্তার উপর ভিত্তি করে জিইউআইকে তথ্য সরবরাহ করতে সক্ষম হওয়া প্রয়োজন। উদাহরণস্বরূপ, একটি জোটযুক্ত ইউনিটের উপর ঘুরে বেড়ানো সেই ইউনিট সম্পর্কিত সমস্ত তথ্য সহ একটি জিইউআই উইন্ডো পপআপ করবে। যেখানে শত্রু unityক্যের উপরে ঘোরাফেরা সীমিত তথ্যের সাথে জিইউআই উইন্ডোটি পপআপ করবে। দুজনের মধ্যে পার্থক্য জানতে আপনি সম্ভবত জিইউআই প্রোগ্রাম করতে চান না, আপনি সত্তাকে তার তথ্য প্রদর্শন করতে বলতে চান।
সুতরাং, সত্তাগুলির এখনও সম্ভবত কিছু প্রকার জিইউআই উপাদান থাকবে তবে তারা জিইআইআই সত্ত্বা নয়, "গেমের" সত্তা হবে। এই উপাদানটি তাদের জিইউআই ইন্টারফেস তৈরি করতে বাহ্যিক জিইউআই সিস্টেমটি ব্যবহার করবে।