কয়েকটি গেম ডিজাইনের ধরণগুলি পেরিয়ে যাওয়ার পরে, আমি আমার গেম ইঞ্জিনের জন্য সত্ত্বা-উপাদান-সিস্টেম (ইএস সিস্টেম) দিয়ে স্থির হয়েছি। আমি নিবন্ধগুলি (মূলত টি = মেশিন ) পড়েছি এবং কিছু উত্স কোড পর্যালোচনা করেছি এবং আমি মনে করি যে আমি শুরু করার জন্য যথেষ্ট পেয়েছি।
আমি লড়াই করছি কেবল একটি প্রাথমিক ধারণা। একে অপরের উপর নির্ভরশীল সত্তাদের গ্রুপগুলির সাথে আমি কীভাবে আচরণ করব?
আমাকে একটি উদাহরণ ব্যবহার করুন:
ধরুন আমি একটি স্ট্যান্ডার্ড ওভারহেড শ্যুটার করছি (মনে করি জেমস্টাউন ) এবং আমি একাধিক স্বতন্ত্র তবে সংযুক্ত অংশগুলি সহ "বস সত্তা" তৈরি করতে চাই। ব্রেক ডাউনটি দেখতে এর মতো কিছু হতে পারে:
- শিপ বডি: মুভমেন্ট, রেন্ডারিং
- কামান: অবস্থান (জাহাজের দেহের সাথে সম্পর্কিত লক), ট্র্যাকিং hero বীরের দিকে আগুন, অক্ষম হওয়া পর্যন্ত ক্ষয়ক্ষতি
- মূল: অবস্থান (জাহাজের দেহের সাথে সম্পর্কিত লক), ট্র্যাকিং hero বীরের দিকে আগুন, অক্ষম হওয়া পর্যন্ত ক্ষয়ক্ষতি নেওয়া, জাহাজের গোষ্ঠীর অন্যান্য সমস্ত সত্তাকে অক্ষম করা (এর ... ধ্বংস করা)
আমার লক্ষ্য এমন কিছু হবে যা আমি প্রতিবার নতুন নতুন এলিমেন্ট তৈরি করতে চাইলে সাব-সিস্টেমটি পুনরায় লিখতে না পেরে একটি স্বতন্ত্র গেম উপাদান হিসাবে চিহ্নিত (এবং ম্যানিপুলেটেড) হবে।
আমি কীভাবে ইএস সিস্টেমে এই জাতীয় নকশা বাস্তবায়ন করব?
- আমি কি কোনও ধরণের পিতা-মাতা-সন্তানের সত্তা সম্পর্ক বাস্তবায়িত করি (সত্তারও সন্তান থাকতে পারে)? এটি এই পদ্ধতির বিপরীত বলে মনে হচ্ছে যে সত্তা খালি খালি ধারক এবং এটি আরও OOP বোধ করে।
- আমি কি তাদেরকে কোনও ধরণের সংযোগকারী উপাদান (বসসকম্পোনেন্ট) এবং সম্পর্কিত সিস্টেম (বোসসুবসিস্টেম) সহ পৃথক সত্ত্বা হিসাবে বাস্তবায়ন করব? আমি সাহায্য করতে পারি না তবে ভাবতে পারি যে এটি কার্যকর করা কঠিন কারণ যেহেতু উপাদানগুলি যোগাযোগকে একটি বড় ভালুক জাল বলে মনে হয়।
- আমি কি তাদের উপাদানগুলির (শিপ কম্পোনেন্ট, ক্যানন কম্পোনেন্টস, কোর কম্পোনেন্ট) সংগ্রহ সহ একটি সত্ত্বা হিসাবে এগুলি প্রয়োগ করব? এটি একটিকে ইএস সিস্টেমের অভিপ্রায়টি (যা উপাদানগুলি ভারী ওজন সত্তার মতো দেখতে খুব বেশি লাগে) বলে মনে হয়, তবে আমি এটি জানি তাই আমি বুঝতে পেরেছিলাম যে এটি সেখানে রেখে দেব।
- আমি উল্লেখ করেছি এমন কিছু হিসাবে আমি কি সেগুলি বাস্তবায়ন করব?
আমি জানি যে এটি ওওপিতে খুব সহজেই প্রয়োগ করা যেতে পারে, তবে ওওপির চেয়ে আমার বেছে নেওয়া ইএস এটির সাথে আমি লেগে থাকব। এই নকশাটি বাস্তবায়নের জন্য যদি খাঁটি ইএস তত্ত্বটি ভাঙার দরকার হয় তবে আমি করব (যেমন আমি আগে খাঁটি ডিজাইনের সাথে আপস করতে চাইনি) তবে আমি খারাপ নকশা দিয়ে শুরু করার পরিবর্তে পারফরম্যান্সের কারণে এটি করতে পছন্দ করব।
অতিরিক্ত creditণের জন্য, একই ডিজাইনের কথা চিন্তা করুন তবে, "বস সত্তা" প্রত্যেকেই একটি মূল সংস্থা, প্রধান মূল এবং 3 "বস সত্ত্বা" দিয়ে তৈরি একটি বৃহত্তর "বিগবস সত্তা" এর সাথে সংযুক্ত ছিল। এটি আমাকে কমপক্ষে 3 টি মাত্রার (পিতামহ-পিতামাতা-সন্তানের) জন্য একটি সমাধান দেখতে দেয় ... যা আমার পক্ষে যথেষ্ট পরিমাণে হওয়া উচিত।