গেম ইঞ্জিন ব্যবহারের সুবিধা এবং অসুবিধাগুলি কী কী? [বন্ধ]


28

গেম ইঞ্জিন ব্যবহার করব কিনা তা আমি কীভাবে জানব? আমি অ্যান্ড্রয়েডের জন্য তুলনামূলকভাবে জটিল 2 ডি গেমটি তৈরি করতে চাই। গেম ইঞ্জিনটি সন্ধান, ইনস্টল এবং শিখতে হবে বা ম্যানুয়ালি সব কিছু করা উচিত কিনা তা স্থির করার জন্য আমার কোন বিষয়গুলি বিবেচনা করা উচিত?


গেম-ডিজাইনটি এখানে সেরা ট্যাগ কিনা তা নিশ্চিত নন; তবে ইঞ্জিনকে কালো তালিকাভুক্ত করা হয়েছে। এই প্রশ্নটি সম্ভবত মুছে ফেলা উচিত।
জেনমলক

উত্তর:


25

সুবিধাদি:

  • বেশিরভাগ কোডিং আপনার পক্ষে না হয়ে থাকলে বেশিরভাগ ক্ষেত্রে আপনার বিষয়বস্তু, স্তর বিন্যাস ইত্যাদি সম্পর্কে উদ্বিগ্ন হওয়া দরকার is

  • এই রেখাগুলির পাশাপাশি, মেমরি পরিচালনা, সম্পদ লোডিং, আলোকসজ্জা (জটিল ইঞ্জিনগুলিতে) ইত্যাদি সমস্ত ডিজাইন করা হয়েছে এবং ভালভাবে পরীক্ষা করা হয়েছে (আশা করা যায়)।

  • নীচে উল্লিখিত হিসাবে, ইঞ্জিনটি যদি ক্রস প্ল্যাটফর্ম হয় তবে আপনার গেমটি পোর্ট করতে আপনাকে কোনও কাজ করতে হবে না।

অসুবিধা:

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

অসুবিধাগুলির তালিকাটি আরও দীর্ঘস্থায়ী নয়: আপনার প্রয়োজনীয় সমস্ত সিস্টেম কোডিং এবং পরীক্ষায় ব্যয় করা সময়টি আপনার উত্পাদন চক্রের জন্য খুব দীর্ঘ, বা কোডের চেয়ে আর্টের সাথে যদি আপনার আরও দক্ষতা থাকে তবে গেম ইঞ্জিন ব্যবহার করা হয় অবশ্যই একটি ভাল ধারণা।

গেম ইঞ্জিনগুলির একটি তুলনা এই প্রশ্নের কাজগুলিতে রয়েছে: বিভিন্ন থ্রিডি গেম ইঞ্জিনগুলির প্রো এবং কনস


3
এটি সামগ্রিকভাবে একটি দুর্দান্ত উত্তর, তবে আমি প্রথম বাক্যে আমার ভ্রূণটি ছড়িয়েছি। আমি দৃ strongly়ভাবে পুনরায় রেকর্ডিংয়ের পরামর্শ দেব "বেশিরভাগ কোডিং আপনার জন্য করা না হলে" "" "নিম্ন স্তরের কোডিং বেশিরভাগ আপনার জন্য করা হয়"; "কোনও গেমের কোনও কোডিংয়ের প্রয়োজন নেই!" এই মিথটিকে চিরকালের জন্য এটি বেআইনী দায়িত্ববোধের দিক থেকে বিভ্রান্তিকর is
ধাক্কা মেরে

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

15

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

আমার জন্য, আমি সমস্ত সম্ভাবনার উপর আচ্ছন্ন হয়ে যাব ! ইঞ্জিন এক্স-এর বৈশিষ্ট্যগুলির দীর্ঘ তালিকার দিকে লক্ষ্য করা, এটি "ওয়াও আমি এই সব করতে পারতাম! আমার খেলা দুর্দান্ত হতে পারে!" সুতরাং আমি এটিকে ডাউনলোড করব, ডেমোগুলি চালাব এবং ক্রিয়াকলাপের বৈশিষ্ট্যগুলি দ্বারা চমকে উঠব Then ইত্যাদি my আমি কিছু কোড লিখতাম, আমি ডেমো প্রকল্পগুলি থেকে শিখতে এবং এটি বেস করতে পারি, তবে সেগুলি কেবল ডেমো ছিল।

আমি কিছুই থেকে কীভাবে শুরু করব এবং কীভাবে তৈরি করব তা জানতাম না। আমি প্রথম পদক্ষেপটি জানতাম না। আমি ইঞ্জিনের ধারণাটি পছন্দ করতাম, এটি আমাকে মুগ্ধ করেছিল এবং আমাকে কিছু তৈরি করার জন্য অনুপ্রাণিত করেছিল, তবে প্রকৃত বিকাশের বিষয়ে আমার জ্ঞানটি এতটাই সীমাবদ্ধ ছিল যে কীভাবে ইঞ্জিনটি নির্মাণের পথে যুক্ত করতে হবে তা জানার পরেও এবং সম্ভবত কয়েক লাইন লিখতে শুরু করেছে ইঞ্জিন এবং তারপরে এটি আবার বন্ধ করে দিন, এর বাইরে আমি কখনই সার্থক কিছু করি নি।

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

এবং ইঞ্জিনগুলির তাদের স্থান রয়েছে। যদি আপনি কোনও ইঞ্জিন খুঁজে পান এবং নিজেকে মনে করেন, "এটি আমি ঠিক লিখব! তারা ইতিমধ্যে আমার জন্য কাজটি করেছে, আমাকে চাকাটি পুনর্বিবেচনা করতে হবে না, এবং আমি ঠিক জানি কীভাবে এটি গেমটিতে ছড়িয়ে দেওয়া যায়? যে আমি ইতিমধ্যে শুরু করেছি [বা কমপক্ষে সম্পূর্ণ পরিকল্পনা এবং শুরু করার জন্য প্রস্তুত]] তবে সম্ভবত এটি বেশ উপযুক্ত। আপনি কীভাবে এটি ব্যবহার করবেন এবং কার্যকর কিছু তৈরি করতে ইঞ্জিন ব্যবহার করতে নিজের কোড কীভাবে লিখবেন তা আপনি ঠিক জানবেন। তবে আপনি যদি কোনও ইঞ্জিন পান তবে রান্নাঘরের ডুব ছাড়া এটি সমস্ত কিছু রয়েছে এবং আপনি মনে করেন আপনি দৈত্যের কাঁধে দাঁড়িয়ে আছেন, আপনি খুব ভুল হয়ে গেছেন। আপনার সামনে একটি বিশালাকার দাঁড়িয়ে আছে এবং আপনার কাঁধে উঠতে হবে।

সুতরাং আমার জন্য বিশাল অসুবিধা: আপনারা যা করতে পারেন তার সমস্ত কাজে নিজেকে আটকাবেন না। আপনি যেই ইঞ্জিন চয়ন করতে পারেন, এতে প্রচুর সম্ভাবনা থাকবে। তবে যদি আপনি কীভাবে প্রকৃতপক্ষে সম্ভাব্যতা ব্যবহার করতে জানেন না, যদি এটি আপনার জীবনযাত্রাকে সহজ করে না বা আপনার কাজটি সফল করতে সহায়তা করে না , তবে আপনি কেন এটি ব্যবহার করছেন?


4

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

সর্বাধিক বড় বিষয় হ'ল সমর্থন, কারণ গেম ইঞ্জিনগুলি নিখুঁত নয় এবং সেগুলি আপনার মন পড়ে না এবং আপনি কোনও কোনও মুহুর্তে আটকে যাবেন। তাই:

  • দলিল আছে?
  • ডকুমেন্টেশন আসলে কোন ভাল?
  • প্রযুক্তিগত সহায়তা আছে (সাধারণত, আপনি এটির জন্য অর্থ প্রদান না করে)? পালা সময় কি?
  • এমন কোনও সম্প্রদায় ফোরাম রয়েছে যেখানে আপনি প্রশ্ন পোস্ট করতে পারেন এবং প্রকৃত উত্তর পেতে পারেন?
  • এমন টিউটোরিয়াল রয়েছে যা আপনাকে ইঞ্জিনটি ব্যবহার শুরু করার উপায়টি দেখায়? নমুনা উত্স কোড অন্তর্ভুক্ত? এগুলি গতিতে উঠতে আপনি কতটা দরকারী?

2
ডকুমেন্টেশনগুলি সামনে তুলে ধরার জন্য +1 ... এতে অনেকগুলি ওপেন সোর্স গেম ইঞ্জিন ব্যর্থ হয়
শিখুন কোকোস 2 ডি

3

কারও কারও কাছে যার প্রচুর সফ্টওয়্যার বিকাশের অভিজ্ঞতা রয়েছে এবং যিনি সম্প্রতি স্ক্র্যাচ থেকে সম্প্রতি একটি গেমটি বিকাশের চেষ্টা করেছিলেন, তিনি আমার 2 সেন্ট এখানে।

উত্তরগুলি এখনও অবধি ভাল এবং কনসের দীর্ঘ তালিকা সরবরাহ করেছে। গেম ইঞ্জিনটি ব্যবহার না করার সবচেয়ে গুরুত্বপূর্ণ কারণটি আমি আমার কাছে যা সরবরাহ করব। আমি চ্যালেঞ্জ এবং পুরষ্কারের জন্য নিখুঁতভাবে একটি গেম লিখতে শেখার কাজটি গ্রহণ করার পরে আমি সিদ্ধান্ত নিয়েছিলাম যে কোনও ইঞ্জিন ছাড়াই স্ক্র্যাচ থেকে করা হবে, কেবল ওপেনজিএল এবং এসডিএল, কারণ আমি শিখতে চেয়েছিলামবিমূর্ততার স্তরটির উপরে সবকিছু everything কোনও সিদ্ধান্তেই আমি এই সিদ্ধান্ত নিয়ে অনুশোচনা করি না। আমার গেমটি 2 ডি অস্টেরয়েডগুলির একটি দুর্দান্ত স্ক্রোলিং সংস্করণ, বেসিক তবে মসৃণ। আমি অত্যন্ত উন্নত গেমগুলির সাথে প্রতিযোগিতা করার চেষ্টা করছি না, তবে আমি আমার গেমটি বিতরণ করি এবং লোকেরা এটি খেলে উপভোগ করেছে। গেমটি মাল্টি প্লেয়ার তৈরি করতে আমি একই পন্থা গ্রহণ করব। এটি একটি বিশাল চ্যালেঞ্জ এবং গ্রন্থাগারগুলি ব্যবহার করা এটি আরও সহজ করে তুলতে পারে, তবে আমার লক্ষ্যটি সহজ করা নয়। আমার লক্ষ্যটি শিখাই, এবং আমার কাছে এটি একটি খণ্ডকালীন ক্রিয়াকলাপ, তাই আমার খুব বেশি সময় নেই এবং অগ্রগতি ধীর গতির। তবে আমার এই পদ্ধতির জন্য আমার কারণ রয়েছে। এটিকে "উচ্চতর শিক্ষা" বলুন।

সুতরাং, আপনার নিজের প্রশ্নের উত্তর দিন, আপনি কি শিখতে চান যে গেম ইঞ্জিন পরিবর্তে এই শিক্ষাগুলি যে উপকার পেতে পারে তার জন্য আপনার জন্য কী করে? যদি তা হয় তবে গেম ইঞ্জিন ব্যবহার করবেন না।


2

"জটিল" বলতে কী বোঝাতে চান তা আপনাকে বিশদ করতে হবে। একটি ভাল গেম ইঞ্জিন নিম্নলিখিত সকলের যত্ন নেয়:

  • স্থিতিশীল ফ্রেমারেটে রেন্ডারিং
  • ইনপুট পরিচালনা
  • ব্যবহারকারী ইন্টারফেস
  • সাউন্ড / সঙ্গীত
  • রিসোর্স ম্যানেজমেন্ট (চিত্র, শব্দ, ডেটা ফাইল)
  • আপনার গেমটি সংরক্ষণ / লোড হচ্ছে
  • পদার্থবিজ্ঞান (2 ডি বা 3 ডি)

নিজেকে ভাবুন, আমি কীভাবে এগুলির প্রতিটি কোড করতে জানি? প্রতিটি প্রোগ্রামে আমি কতক্ষণ সময় নেব এবং এই প্রতিটি কীভাবে ইঞ্জিন তৈরি করতে হয় তা শিখতে আমার কতক্ষণ সময় লাগবে?


1

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

আরেকটি সুবিধা: গেম ইঞ্জিনটি ক্রস প্ল্যাটফর্ম (ityক্য) হতে পারে।

অসুবিধেও? কন্ট্রোল? ইঞ্জিন আপনার জন্য কিছু জিনিসের যত্ন নিচ্ছে (যেমন রেন্ডারিং) সুতরাং এতে যদি বাগ বা পারফরম্যান্সের সমস্যা থাকে তবে আপনি কেবল নিজেরাই এটি ঠিক করতে পারবেন না।

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