ডেটা চালিত ডিজাইন কী? [বন্ধ]


11

আমি গেমসের জন্য ডেটা চালিত ডিজাইনের অনেকগুলি নিবন্ধ পড়ছি। মনে হচ্ছে এটি নেমে এসেছে:

  • কোনও হার্ড কোডিং নেই
  • ইঞ্জিনে কোনও গেম-নির্দিষ্ট কোড নেই
  • এআই, cutscenes, এবং cetera জন্য স্ক্রিপ্টিং।
  • পুনঃব্যবহারযোগ্যতার জন্য কোড সাধারণকরণ
  • উপাদান নকশা
  • modularity
  • কম মিলন
  • সম্পাদক (ডেটা, মানচিত্র, স্ক্রিপ্টগুলির জন্য)
  • বাহ্যিক তথ্য পুনরুদ্ধার
  • পাঠ্য ফাইলগুলিতে রাখা কনস্ট্যান্টগুলি ( .iniবা অন্যথায়)
  • ডিজাইনারদের দ্বারা স্ক্রিপ্টিং এবং ম্যানিপুলেশনের জন্য সম্পাদকদের মাধ্যমে ডেটা প্রকাশ করুন

এখন, আমার প্রশ্ন, এই বোঝাটি কি সঠিক?


3
সাইটে স্বাগতম। আপনার এখানে দুটি প্রশ্ন রয়েছে (সাধারণত আপনার প্রতি পোস্টের জন্য কেবল একটি প্রশ্ন জিজ্ঞাসা করা উচিত) এবং "কীভাবে শুরু করবেন" সম্পর্কে দ্বিতীয় প্রশ্নটিকে অফ-টপিক হিসাবে বিবেচনা করা হয়, তাই আমি এটিকে সম্পাদনা করেছি, পাশাপাশি প্রশ্নটি নীচে রেখেছি। তুমি কেমন সেটা দিয়ে শুরু করতে সম্পর্কে আলোচনা করতে চান তাহলে, পরিদর্শন বিবেচনা গেম বিকাশ চ্যাট

@ জোশপেট্রি তবে আমি এখন অনেক সাইটে গিয়েছি এবং এটির কোনও উত্তর পাইনি বলে এটি সর্বাধিক গুরুত্বপূর্ণ। এমনকি কোনও দিকে তাকানোও নয়। কিছু লোক অবশ্যই এই বিষয়গুলি সম্পর্কে কিছুটা অন্তর্দৃষ্টি পেয়েছে।
ওমনিওল

1
এছাড়াও সম্পর্কিত: গেমদেব.স্ট্যাকেক্সেঞ্জারভিউ

1
সম্ভবত এটি আপনার কাছে সর্বাধিক গুরুত্বপূর্ণ তবে এটি এখানে অফ-টপিক ( প্রায়শই জিজ্ঞাসিত প্রশ্নগুলি দেখুন )। আমি শুধু প্রশ্ন বন্ধ করতে পারে। পরিদর্শন গেম বিকাশ চ্যাট বা মত প্রকৃত আলোচনা ফোরামে GDNet আপনি জিজ্ঞাসা করতে কীভাবে-get-শুরু প্রশ্ন চান।

1
আপনি অফ টপিক প্রশ্নে সহায়তা চাইলে @ ভিপার পপ চ্যাট করুন into গ্যারান্টি না দিয়ে আপনি সাহায্য পাবেন তবে প্রচুর স্মার্ট লোক সেখানে ঝুলে আছে।
ক্লাসিকথান্ডার

উত্তর:


10

আমি বলব এটি সঠিক নয়। আমি বিশ্বাস করি যে ডেটা চালিত ডিজাইনের সর্বাধিক গুরুত্বপূর্ণ ধারণাটি আপনার ডেটাটিকে যা পরিবর্তন করে (বা আপডেট করে) তা থেকে আলাদা করে দেয়

সুতরাং এটি যেমন একটি আদর্শ ওও গভীর শ্রেণিবিন্যাস থেকে যান:

class MyCreature{
     vector position;
     void update(){ position += 1; }
}

একটি পৃথক রাষ্ট্র এবং ব্যবস্থা

class CreatureState{
    vector postion;
}

class MovementSystem{
    list<CreatureState> states;
    void update() {
        for each CreatureState state in states {
            state.position += 1;
        }
}

এই মুহুর্তে সর্বাধিক প্রভাবশালী ডিডিডি দৃষ্টান্তগুলির মধ্যে রয়েছে এনটিটি সিস্টেমগুলি। সন্ধান করার জন্য কয়েকটি দুর্দান্ত উত্স হ'ল:

http://gamedevrubberduck.wordpress.com/2012/12/26/a-hybrid-entity-system-component-architecture/

http://entity-systems.wikidot.com/

অবশ্যই সমস্ত দৃষ্টান্ত / ধারণাগুলির সাথে একটি সঠিক সংজ্ঞা নেই এবং ডিডিডি কথা বলার সময় প্রত্যেকে একই ধারণাটি বুঝতে পারে না তবে এটিই আমি সবচেয়ে গুরুত্বপূর্ণ বিষয়টিকে বিশ্বাস করি।


হ্যাঁ আমি বিচ্ছেদ অংশ উল্লেখ করতে ভুলে গেছি। এবং এটি দেখতে আমি ঠিক দেখতে চাই I'd আমি কেবল এত তত্ত্বটি পড়তে পারি। আমার কিছু দৃ concrete় উদাহরণ দেখতে হবে। ধন্যবাদ. নিবন্ধগুলিতেও একবার নজর রাখবেন!
ওমনিওল

ওহ অপেক্ষা করুন অবশেষে আমি কিছুক্ষণ আগে পড়েছি সেরা ব্যাখ্যাটি খুঁজে পেয়েছি। দেখা গেছে যে আমি এখানে জিজ্ঞাসা করা একটি প্রশ্নের উত্তর ছিল গেমদেব.স্ট্যাকেক্সেঞ্জার / প্রশ্নস / 9৪৯7171/২ : ডি
রায় টি।

4

আমি মনে করি আপনি সংজ্ঞাটি overcomplicating করছেন। অবশ্যই, আপনার বুলেটযুক্ত পয়েন্টগুলির তালিকায় থাকা অনেকগুলি নীতিই একটি সফ্টওয়্যার ইঞ্জিনিয়ারিং দৃষ্টিকোণ থেকে ভাল , তবে সেগুলি অগত্যা "ডেটা-চালিত" সংজ্ঞাটির অংশ নয়। তাদের অনেকেরই কিছু ওভারল্যাপ থাকে, বা ডেটা-চালিত পদ্ধতির সাহায্যে সর্বোত্তমভাবে প্রয়োগ করা হয় , তবে কোনও কিছু ডেটা-ড্রাইভিংয়ের কাজকে গঠন করে না।

ডেটা-চালিত সফ্টওয়্যার বিকাশের প্রকৃত সংজ্ঞা সাধারণত মোটামুটি সহজ: একটি প্রোগ্রাম মূলত কোডের মধ্যে পূর্বনির্ধারিত এবং নির্দিষ্ট পদক্ষেপের ধারাবাহিক না হয়ে বাইরে বাইরের কিছু তথ্যের (স্তরের ডেটা, স্ক্রিপ্ট ডেটা, এবং সিটিরা) এর উপর ভিত্তি করে ক্রিয়া সম্পাদন করে নিজেই যা নিয়ন্ত্রণ প্রবাহ নির্ধারণ করে।


আপনি সম্ভবত ঠিক বলেছেন যে আমি জিনিসগুলিকে অতিরিক্ত জটিল করে তুলি। এটি এমন কিছু যা আমি করি। তবে আমি কীভাবে এটিকে কোডিং শুরু করব তা প্রায় আমার মনকে গুটিয়ে রাখতে পারি না।
ওমনিওল

1
আমি জিডিনেটে আপনার প্রশ্নের উত্তর পোস্ট করেছি । ইস্যুটির ত্রুটিটি হল: এতো চেষ্টা করা বন্ধ করুন, আপনি শেষ পর্যন্ত যা চান তার একক সাধারণ দিক বেছে নিন এবং এটি দিয়ে একটি ছোট গেমটি তৈরি করুন।

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