আমি একটি উপাদান-ভিত্তিক গেম অবজেক্ট সিস্টেম তৈরি করছি । কিছু টিপস:
GameObject
কেবল একটি তালিকাComponents
।- আছে
GameSubsystems
। উদাহরণস্বরূপ, রেন্ডারিং, পদার্থবিজ্ঞান ইত্যাদি প্রত্যেকটিতেGameSubsystem
কিছু কিছুতে পয়েন্টার রয়েছেComponents
।GameSubsystem
এটি একটি খুব শক্তিশালী এবং নমনীয় বিমূর্ততা: এটি গেম বিশ্বের যে কোনও স্লাইস (বা দিক) উপস্থাপন করে।
নিবন্ধনের একটি প্রক্রিয়া একটি প্রয়োজন নেই Components
এ GameSubsystems
(যখন GameObject
তৈরি করেছেন এবং গঠিত হয়)। আছে 4 পন্থা :
- 1: দায়িত্ব প্যাটার্নের চেইন । প্রত্যেককে প্রত্যেককে
Component
দেওয়া হয়GameSubsystem
।GameSubsystem
কোন সিদ্ধান্তComponents
নিবন্ধিত করতে হবে (এবং কীভাবে তাদের সংগঠিত করবেন) makes উদাহরণস্বরূপ, গেমসউসসিস্টেমরেন্ডার রেন্ডারেবল উপাদানগুলি নিবন্ধন করতে পারে।
প্রো। Components
সেগুলি কীভাবে ব্যবহৃত হয় সে সম্পর্কে কিছুই জানেন না। কম মিলন। উ: আমরা নতুন যুক্ত করতে পারি GameSubsystem
। উদাহরণস্বরূপ, আসুন গেমসবুটিস্টিটম্যাটেলগুলি যুক্ত করুন যা সমস্ত কম্পোনেন্টটাইল নিবন্ধভুক্ত করে এবং গ্যারান্টি দেয় যে প্রতিটি শিরোনামটি অনন্য এবং শিরোনাম অনুসারে প্রশ্নগুলির اعتراضগুলিকে ইন্টারফেস সরবরাহ করে। অবশ্যই, এক্ষেত্রে কম্পোনেন্টটাইটল পুনরায় লেখা বা উত্তরাধিকারসূত্রে প্রাপ্ত হওয়া উচিত নয়। বি। আমরা বিদ্যমান পুনর্গঠন করতে পারেন GameSubsystems
। উদাহরণস্বরূপ, গেমসুবসিস্টেমউডিও, গেমসবুটিস্টেমরেন্ডার, গেমসুস্টিস্টম পার্টিক্যাল এমমিটারকে গেমসুবসিস্টেমস্পটিয়ালে একীভূত করা যেতে পারে (সমস্ত অডিও, এমমিটার স্থাপনের জন্য, Components
একই শ্রেণিবিন্যাসে রেন্ডার করতে এবং প্যারেন্ট-আপেক্ষিক ট্রান্সফর্ম ব্যবহার করতে পারেন)।
বিরূদ্ধে। প্রতি-প্রতিটি চেক। খুব অদক্ষ।
বিরূদ্ধে। Subsystems
সম্পর্কে জানুন Components
।
- 2: প্রতিটি নির্দিষ্ট ধরণের
Subsystem
জন্য অনুসন্ধান করেComponents
।
প্রো। চেয়ে ভাল পারফরম্যান্স Approach 1
।
বিরূদ্ধে। Subsystems
এখনও সম্পর্কে জানি Components
।
- 3:
Component
নিজেকে নিবন্ধন করেGameSubsystem(s)
। আমরা সংকলন সময়ে জানি যে একটি গেমসবুটিস্টেমেন্ডেন্ডার রয়েছে, সুতরাং আসুন কমপোনেন্টআইমেজ রেন্ডার গেমসউসসিস্টেমেন্ডারার :: রেজিস্টার (কম্পোনেন্টরেন্ডারবেস *) এর মতো কিছু কল করবে।
প্রো। কর্মক্ষমতা. হিসাবে অপ্রয়োজনীয় চেক নেই Approach 1
।
বিরূদ্ধে। Components
খারাপভাবে মিলিত হয় GameSubsystems
।
- 4: মধ্যস্থতা প্যাটার্ন।
GameState
(এতে রয়েছেGameSubsystems
) নিবন্ধক সংস্থার (উপাদান *) প্রয়োগ করতে পারে।
প্রো। Components
এবং GameSubystems
একে অপরের সম্পর্কে কিছুই জানে না।
বিরূদ্ধে। সি ++ এ এটি দেখতে কুৎসিত এবং ধীর টাইপাইড-স্যুইচের মতো হবে।
প্রশ্ন:
কোন পদ্ধতিটি আরও ভাল এবং বেশিরভাগই উপাদান-ভিত্তিক ডিজাইনে ব্যবহৃত হয়? অনুশীলন কি বলে? বাস্তবায়ন সম্পর্কে কোন পরামর্শ Approach 4
?
ধন্যবাদ.
Components
করা GameObjects
আমার প্রশ্নের অবকাশ। উপাদান-ভিত্তিক পদ্ধতির সম্পর্কে নিবন্ধগুলি পড়ুন বা আপনি যদি আগ্রহী হন তবে এই সাইটে আপনার নিজের প্রশ্ন জিজ্ঞাসা করুন। আপনি যা ভাবছেন GameSubsystem
তা সম্পূর্ণ ভুল।