উত্স ইঞ্জিনের সম্পূর্ণ সি ++ উত্স কোড পাওয়া যায়?
আমি জানি যে উত্স-ভিত্তিক গেমটি কেনার সাথে সাথে এসডিকে পাওয়া যায় , তবে আমার লক্ষ্যটি একটি উন্মুক্ত উত্সাহিত গেম ইঞ্জিন সন্ধান করা যা এতে শেখার উদ্দেশ্যে সম্পূর্ণ বাস্তবায়নের বিশদ অন্তর্ভুক্ত করে।
উত্স ইঞ্জিনের সম্পূর্ণ সি ++ উত্স কোড পাওয়া যায়?
আমি জানি যে উত্স-ভিত্তিক গেমটি কেনার সাথে সাথে এসডিকে পাওয়া যায় , তবে আমার লক্ষ্যটি একটি উন্মুক্ত উত্সাহিত গেম ইঞ্জিন সন্ধান করা যা এতে শেখার উদ্দেশ্যে সম্পূর্ণ বাস্তবায়নের বিশদ অন্তর্ভুক্ত করে।
উত্তর:
না এটা না. আপনি ভালভের কাছ থেকে উত্স লাইসেন্স পেতে পারেন, তবে উত্স নিজেই ওপেন সোর্স নয়।
তদ্ব্যতীত, সাধারণভাবে সেই ইঞ্জিনটির বিকাশে যে কেউ তীব্রভাবে জড়িত ছিল তার নির্দেশনা ব্যতীত বিদ্যমান বিদ্যমান ইঞ্জিনগুলি শেখার উপাদান হিসাবে ব্যবহার করা খুব বিপজ্জনক পদ্ধতি ।
সোর্স কোড কেবলমাত্র আপনাকে নির্দিষ্ট নকশার সিদ্ধান্তগুলির কীভাবে তা বলে দেয় , সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের এতগুলি পছন্দ সাধারণত সমানভাবে-বৈধ বিকল্পগুলির মধ্যে থেকে হয় কেন না often পছন্দটি কেন ভাল তা বোঝার জন্য আপনার প্রসঙ্গের প্রয়োজন, এবং আপনি যদি কিছু ইঞ্জিনের উত্সটি দেখে থাকেন এবং তাদের কৌশল এবং প্রতিমাগুলি, তবে আপনি কার্যকরভাবে কোনও কার্যকর কিছু শিখছেন।
এছাড়াও, কোডটি কোনও গেম শিপিয়ে দেওয়ার কারণে এই কোডটি ভাল হয় না ( উদাহরণস্বরূপ উত্সটি সি ++ এবং ওওর ক্ষেত্রে এখনকার তুলনায় খুব নকশাকৃত সিদ্ধান্তের প্রবণতা রয়েছে )। এমনকি সবচেয়ে সফল এএএ শিরোনামগুলির ইঞ্জিন কোডবাসে প্রচুর হরর গল্প রয়েছে। এবং একটি ইমপ্রেশনযোগ্য নওফাইট হিসাবে, আপনি খারাপ থেকে ভাল কোড বলতে সক্ষম হতে যাচ্ছেন?
শেখার সংস্থান হিসাবে উত্স কোডটি ব্যবহার করে খুব সতর্কতা অবলম্বন করুন এবং এটি যথাসম্ভব পরিপূরক তথ্যের সাথে যুক্ত করতে ভুলবেন না।
tl; dr: ইঞ্জিন তৈরি করতে শিখতে প্রায়শই আপনার নিজের কম্পিউটার এবং অপারেটিং সিস্টেমটি স্ক্র্যাচ থেকে তৈরি করা শেখার মতো গেম তৈরির ক্ষেত্রেও দরকারী। আপনি যদি ক্ষেত্রের বিশেষজ্ঞ না হন তবে আপনি সম্ভবত কোনও ইঞ্জিন তৈরি করতে চান না। পরিবর্তে একটি গেম তৈরি করুন, ইঞ্জিন অংশটি ইতিমধ্যে বিদ্যমান। পরে যদি আপনার ইঞ্জিনগুলির কোনওরই আপনার গেম ডিজাইনের মানদণ্ডগুলি মেটানোর অ্যাক্সেস না থাকে তবে আপনি সেই নির্দিষ্ট দিকটি তৈরির দিকে মনোনিবেশ করতে পারেন এবং নরক এটি অন্যদের পক্ষেও কার্যকর হতে পারে যেহেতু আপনি নতুন কিছু তৈরি করছেন এবং কম শক্তিশালী সংস্করণ পুনরায় তুলছেন না এমন কিছু যা লোক ইতিমধ্যে কয়েক হাজার ঘন্টা বিনিয়োগ করেছিল।
দীর্ঘ সংস্করণ: আপনি যদি ইঞ্জিনটি কীভাবে লিখতে চান তা সত্যিই জানতে চান তবে এখনও বিদ্যমান ইঞ্জিনটির দিকে তাকাবেন না। ইঞ্জিন তৈরি করা অংশগুলি (অ্যালগোরিদমগুলি) পরিবর্তে শিখুন, এটি রেন্ডারিং, পদার্থবিজ্ঞান বা পাথ সন্ধান ইত্যাদি etc. একবার আপনি যখন কোনও নির্দিষ্ট দিক সম্পর্কে গভীর ধারণা অর্জন করেন, আপনি উত্সটি পরীক্ষা করতে চাইতে পারেন।
উন্নততর বিকল্প না থাকলে আপনি সাধারণত উত্স থেকে সরাসরি শিখতে চান না। এমনকি অভিজ্ঞ প্রোগ্রামাররা সাধারণত এটি থেকে শেখার জন্য একটি সম্পূর্ণ ইঞ্জিনের উত্সের দিকে তাকাবে না (যদি তারা এটি সহায়তা করতে পারে) তবে তারা সম্ভবত এটির একটি নির্দিষ্ট অংশটি পরিদর্শন করবে বা এর একটি নির্দিষ্ট অংশটি সন্ধান করতে পারে। খাঁটি শেখার উদ্দেশ্যে উত্সটি দেখার চেষ্টা করা ইঞ্জিন কোডের পিছনে পদ্ধতি এবং চিন্তার প্রক্রিয়াটি উন্মোচিত করবে না; এটি কোনও বিল্ডিং কীভাবে তৈরি করা যায় তা শিখার জন্য তার অভ্যন্তরীণ অংশ দেখার জন্য টিয়ের টুকরো টুকরো টুকরো করার মতো হবে be যদিও আমি জোশের উত্তরের সাথে একমত হয়েছি, আমি এটিকে আরও একধাপ এগিয়ে নিয়ে যাব, আপনি অনেক ইন্দ্রিয়তে "কীভাবে" শিখেন না (আপনি যদি ক্ষেত্রের সাথে পরিচিত না হন); এই ক্ষেত্রে, প্রোগ্রামিং টিম কোন পদ্ধতিটি ব্যবহার করত? ওয়ার্কিং কোড বাস্তবায়নের জন্য তারা কোন নীতির উপর নির্ভর করেছিল? ডিবাগিংয়ের জন্য তারা কী কী সরঞ্জাম এবং কৌশল ব্যবহার করেছেন? এই সমস্ত প্রশ্ন কখনও কখনও কোডের চেয়ে বেশি গুরুত্বপূর্ণ (শেখার উদ্দেশ্যে)।
আপনি যদি উত্স থেকে শিখতে চান তবে এমন উত্স সন্ধান করুন যা ভালভাবে নথিভুক্ত এবং এর চারপাশে একটি শক্তিশালী সম্প্রদায় তৈরি করা আছে। (ইঞ্জিন) কোড পড়া, যদিও আপনি এটি নিজে লিখেছেন, প্রায়শই বিভ্রান্তিকর হয়।