উত্তর:
ব্রেকআউট
সহজ খেলা যেহেতু আপনার চিন্তার খুব একটা অবস্থা নেই (এটি ইটের মূল্যগুলির একটি অ্যারে - আপনার যদি কেবল একটি ইটের রঙ থাকে তবে এটি পতাকাগুলির একটি অ্যারে থাকে), কোনও এআই নেই, এবং আপনাকে একটি কাজ করতে হবে বলটি সঠিকভাবে বাউন্সে পেতে পদার্থবিদ্যার সামান্য বিট।
অধুনালুপ্ত ডোডো জাতীয় পাখি
নিয়মগুলি ব্রেকআউটের চেয়ে কিছুটা জটিল এবং এর ইন্টারফেসটি অনেক আলাদা। এটি আপনাকে একটি গেম বাস্তবায়নের বিভিন্ন পদ্ধতি সম্পর্কে চিন্তা করতে বাধ্য করে। অর্থাত্, একটি গেমের মধ্যে যা কাজ করে তা আপনি অন্য খেলায় যা ব্যবহার করেন তা অগত্যা নয়।
প্যাক ম্যান
এটি খুব ভাল কারণ আপনি কিছুটা এআই এর কাজ করতে পারেন। ভূতরা খেলোয়াড়কে অনুসরণ করে (তবে খুব ভাল নয় - আপনি খেলোয়াড়ের চান এমন সুযোগ চান) দ্রুত প্রয়োগ করা যেতে পারে, এবং আপনার একটি মজার ছোট্ট খেলা হবে যা আপনি টুইট এবং বন্ধুদের এবং পরিবারকে প্রদর্শন করতে পারেন (ইতিবাচক প্রতিক্রিয়া সর্বদা থাকে আপনি যখন শুরু করছেন তখন একটি ভাল জিনিস)।
আমি দেখতে পেয়েছি যে আপনি যদি প্রাথমিক ভিডিও গেমগুলিতে অনুপ্রেরণার সন্ধান করেন তবে আপনি প্রচুর পরিমাণে ধারণা পেতে পারেন যা প্রয়োগ করার জন্য তুলনামূলক সহজ। এছাড়াও, আপনি সুপার সিম্পল আর্টওয়ার্ক এবং শব্দগুলি নিয়ে দূরে সরে যেতে পারেন কারণ আপনি যাইহোক খুব সাধারণ কিছু অনুলিপি করছেন। এটি আপনাকে প্রথমে বেসিকগুলিতে ফোকাস করতে দেয় - আপনার গেমটি লুপ আপ করা এবং চলমান, আপনার পিক্সেলগুলি কীভাবে স্ক্রিনে পাবেন, একটি শব্দ বাজানো, স্কোর বজায় রাখা, গেমের মধ্যে প্লেয়ারের ইনপুট পেতে fig
আপনি কোন খেলাটি প্রথমে বেছে নিয়েছেন তা মোটেও গুরুত্বপূর্ণ নয় - কেবল আপনি এমন কোনও সাধারণ বাছাই করেছেন তা নিশ্চিত করুন যার সাথে আপনি দ্রুত ফলাফল পেতে পারেন, পরের দিন আপনি অন্য পথে যেতে পারেন এবং অন্যটি তৈরি করতে পারেন। এবং অন্য. এবং আরেকটি - আপনি যত বেশি তৈরি করবেন, আপনি নিজেকে তত বেশি চাপ দেবেন এবং অবশেষে আপনি এটি জেনে যাওয়ার আগে জটিল গেমস তৈরি করবেন।
আমি দৃ strongly়ভাবে সুপারিশ করব যে নবজাতক প্রোগ্রামাররা যে ਅਸਲটি লিখতে চান তার সর্বাধিক সহজ গেমটি দিয়ে শুরু করা উচিত । ম্যাট রিক্স দ্বারা উল্লিখিত হিসাবে, একটি গেম বনাম একটি ডেমো লেখার বিশাল অংশটি জঘন্য জিনিসটিকে সমাপ্তির দিকে ঠেলে দিচ্ছে - ক্রেডিট, মেনু, খেলার টেস্টিং, উচ্চতর স্কোর, বিরতি দেওয়া, টেস্টিং, অসুবিধা স্তর, পরিষ্কার গেম রাষ্ট্রের রূপান্তর, খেলা পরীক্ষা করা ইত্যাদি That এই জিনিসগুলিতে আপনি রাখার জন্য কমপক্ষে অর্ধেক সময় লাগে এবং এটি মজাদার নয়। এটা না। তাই যদি না আপনি ধারণা ভালবাসেন এবং সত্যিই প্রেরণা প্রদান করা হয়, আপনি ছেড়ে দিতে হবে এবং এগিয়ে যান সামনে খেলা একটি বার করে দেব খেলা ।
আপনি যদি কোনও আরপিজি লিখতে চান তবে সবচেয়ে সহজ, সবচেয়ে পরিচালনাযোগ্য আরপিজি ধারণাটি বের করুন যা আপনি করতে চান এবং এটি করতে চান তা নিয়ে আসতে পারেন । আপনি যদি কোনও সাই-ফাই শ্যুটার, বা হরর-থিমযুক্ত প্ল্যাটফর্মার বা যা কিছু করতে চান তবে একই। আপনি যে কাজটি শেষ করবেন তা চয়ন করুন, যা মজা করার পরেও আপনি শেষ করতে চান তবে আপনি সত্যিই সম্পন্ন হওয়ার আগে আপনি কয়েক ডজন ঘন্টার কাজটির দিকে তাকাচ্ছেন।
"আপনার উইংস উপার্জন" সেরা খেলা? আপনি যেটি শেষ করেছেন। আপনি কতটা অর্ধ-সম্পন্ন পং / ব্রেকআউট / গালাগা / টেট্রিস ডেমো লিখেছেন তা আমি খেয়াল করি না, আপনি একটি আসল সমাপ্ত খেলা প্রকাশ না করা পর্যন্ত আপনি গেম ডেভেলপার নন।
এছাড়াও, 40 বছর বয়সী গেমগুলির কেউ আর একটি সংস্করণ খেলতে চায় না, এবং গেমগুলি লেখার অন্তত কিছুটা লোকদের খেলতে হয় , তাই না?
আমি এই সিঁড়িটি কিছুক্ষণ আগে টিআইজিএসফোর্সে পোস্ট করেছি। এটি খুব বেসিক থেকে শুরু করে খুব জটিল পর্যন্ত।
গেম প্রোগ্রামিং শেখার সর্বাধিক গুরুত্বপূর্ণ নিয়ম: প্রোগ্রামিং শেখা শক্ত। গেম ডিজাইন শেখা শক্ত। কীভাবে ভাল গেম আর্ট বা অডিও বানাতে হয় তা শিখাই শক্ত। এই সমস্ত কিছু একই সাথে করার চেষ্টা করা ব্যর্থতার একটি রেসিপি। একবারে একটি জিনিস শিখুন।
পরিণতি: নকশা, শিল্প এবং শব্দ ইতিমধ্যে সম্পন্ন হয়েছে এমন একটি খেলা প্রোগ্রাম করুন। ক্লোন তৈরি করুন, আসল গেমস নয়।
আমার ক্লাসে, আমি সবসময় এই গেমগুলি শুরু করার পরামর্শ দিই:
1) টেট্রিস। শিল্পটি রঙিন আয়তক্ষেত্রাকার, যা মোট ক্লুট্টজ মাইক্রোসফ্ট পেইন্টে আঁকতে পারে। আপনার শব্দ দরকার নেই। প্রোগ্রামিং তুলনামূলকভাবে সহজ, তবে এখনও কয়েকটি মূল বিষয় প্রয়োজন: অভ্যন্তরীণ গেমের অবস্থা এবং স্ক্রিনে কী আঁকা তার মধ্যে পার্থক্য বোঝা; পর্দায় আঁকতে সক্ষম হওয়া, সময়কাল (সম্ভবত স্প্রাইটস এবং ব্লিটিং জড়িত); আপনি তাদের জন্য অপেক্ষা করতে হবে যেখানে কেবল গেচ () বা স্ক্যানফ () ব্যবহার না করে রিয়েলটাইমে ব্যবহারকারী ইনপুট গ্রহণ করতে সক্ষম হচ্ছেন।
2) ব্রেকআউট / আরকানয়েড। শিল্পটি এখনও রঙিন আয়তক্ষেত্রাকার এবং আপনার এখনও শব্দ প্রয়োজন হয় না। টেট্রিসের সমস্ত বুনিয়াদি ধারণাগুলি ব্যবহার করে, সাথে কিছু বেসিক সংঘর্ষ সনাক্তকরণ এবং 2 ডি পদার্থবিজ্ঞান ব্যবহার করা হয় যেহেতু বলটি সরানো এবং মসৃণভাবে বাউন করতে হয়।
3) গ্রেডিয়াস / আর-টাইপ। এটি তৈরির জন্য আপনি সম্ভবত কিছু ফ্রিওয়্যার টাইলসেট খুঁজে পেতে পারেন। এখানে পটভূমি স্ক্রল করছে, সুতরাং আপনাকে গ্রাফিক্স মেমরি কীভাবে কাজ করবে সে সম্পর্কে পৃষ্ঠা-ফ্লিপিং এবং ডাবল-বাফারিং এবং দৃশ্যমান স্ক্রিনের সীমানার বাইরে স্টাফ আঁকার মতো কৌশল ব্যবহার করে আপনাকে আরও কিছুটা শিখতে হবে। আপনার গতিশীল শত্রু এবং বুলেট স্প্যানও রয়েছে, তাই আপনার নিজের পরে পরিষ্কার করা শিখতে হবে (যেমন শত্রু এবং বুলেটগুলি পর্দা ছেড়ে দেয় যাতে আপনার গেমটি চালনের মতো স্মৃতি ফাঁস না করে)।
৪) সুপার মারিও ব্রোস। আগের স্ক্রোলিং প্রকল্পের অনুরূপ, স্ক্রোলিংটি এখন প্লেয়ারের নিয়ন্ত্রণাধীন এবং স্বয়ংক্রিয় নয়। আপনাকে মাধ্যাকর্ষণ এবং এর সাথে চলতে থাকা সমস্ত মজাদার সংঘর্ষের জিনিসগুলিও মোকাবেলা করতে হবে (যেমন আপনি শেষ ফ্রেমে উপরে কয়েক পিক্সেল উপরে ছিলেন এবং পরবর্তী ফ্রেমে নীচে কয়েকটি পিক্সেল নিয়ে যেতে চান বলে মেঝেটি না পড়ার মতো) )। এছাড়াও লক্ষ করুন যে মাধ্যাকর্ষণ শর্তযুক্ত: এটি খেলোয়াড় এবং কিছু শত্রুগুলিকে প্রভাবিত করে, তবে সাধারণত প্ল্যাটফর্ম বা ভাসমান মুদ্রা বা যা কিছু নয়, যা বাস্তব জগত থেকে কিছুটা আলাদা।
আপনি যদি এই চারটিটিই করতে পারেন তবে আপনি যে কোনও 2 ডি গেম চান তা করতে সক্ষম হবেন; সমস্ত সরঞ্জাম আছে। আপনি যদি 3 ডি গেম বানাতে চান ... প্রথমে 2D শিখুন কারণ এটি অনেক সহজ এবং আপনার গাণিতিকে গভীরতার মতো বুঝতে হবে না এবং আপনাকে 2 ডি স্টাফটি যেভাবেই বোঝা দরকার ... এবং তারপরে আপনি যখন এতে আরামদায়ক, কয়েকটি বেসিক 3 ডি সরঞ্জাম (টর্ক বা ইউনিটির মতো লাইব্রেরি, অথবা মূল ডুম এবং কোকের মতো ওপেন-সোর্স গেমস) নিয়ে কাজ শুরু করুন।
শুভকামনা!
এখন এটি প্রকৃত ভাল প্রশ্ন question আপনি কোথায় আছেন তা আমি জানি না, তাই আমি আকাশের দিকে ঘুরে বেড়াব, এবং ধরে নিও যে আপনি কখনও জীবনে কোডের একটি লাইন লিখেন নি। নাকের যে কোনও অংশ আপনাকে আপত্তিজনক বলে তা কেটে ফেলুন, একটি শব্দগুচ্ছ ব্যবহার করতে।
আমি মনে করি আপনি আসলে যা চেয়েছিলেন তার চেয়ে আমি কিছুটা আলাদা প্রশ্নের উত্তর দিতে যাচ্ছি, এবং আপনি সিটুতে জিজ্ঞাসা করা প্রশ্নটি পূরণ করার জন্য উদাহরণ দিতে যাচ্ছি। আমি সেভাবে এটি করার কারণটি সামান্য হলেও আমি বিশ্বাস করি যে দৃষ্টিকোণে তাত্পর্যপূর্ণ পার্থক্য রয়েছে: এটি নির্দিষ্ট গেমগুলির পক্ষে এতটা গুরুত্বপূর্ণ নয়, those গেমগুলি ডিজাইনারের কাছে যতটা মানসিকভাবে নিয়ে আসে।
আপনি জানেন যে লোকেরা কীভাবে আপনার কথা বলার কথা বলে যে আপনি বিভিন্ন ধরণের প্রোগ্রামিং ভাষা শিখবেন, যাতে তাদের মানসিকতা এবং তাদের হৃদয় এবং তাদের জীবনযাত্রা খায় এবং এর ফলে তাদের শক্তিশালী শক্তি অর্জন করতে পারে? এটির একটি বাস্তব সত্য আছে - আপনার প্রথম খাঁটি বা কাছাকাছি-খাঁটি প্রোগ্রামিং ভাষার পরে, এমনকি অপরিহার্য ভাষায়ও আপনি বেশিরভাগ পার্শ্ব-প্রতিক্রিয়া মুক্ত ফাংশন লিখতে চলেছেন কারণ এগুলি এত বেশি সংজ্ঞায়িত, এবং আপনি যা কিছু লিখেছেন এমনকি ভাষাগুলিতেও এই ফর্মটি ভাল নয়। এটি হ'ল ভাষাটি বিশেষত তা বিবেচনা করে না - হ্যাশেল, মিলি / অকামল / স্মলনজ, সূত্রনি, সি ++ টেম্পলেট, যাই হোক না কেন - আপনি এখনও পাশের প্রভাবের অবস্থার উপর নির্ভর না করে বিভিন্ন শ্রেণীর কাজ কীভাবে করবেন তা শিখতে চলেছেন। প্রথমবার আপনি কোনও রাগানো, মেশিনের কাছাকাছি প্রোগ্রামিং ভাষা শিখবেন, আপনি ' আকার টাইপ বিমূর্ততা সম্পর্কে শিখতে যাচ্ছি। প্রথমবার যখন আপনি একটি ঘোষণামূলক বা সীমাবদ্ধ ভাষা শিখবেন, আপনি বিচক্ষণতার সরঞ্জাম হিসাবে বাউন্ডিং সম্পর্কে শিখতে যাচ্ছেন। প্রথমবার যখন আপনি ব্যাকট্র্যাকিং অনুসন্ধানের ভাষা শিখবেন, আপনি আইএ প্রার্থনা করতে শিখছেন! আমি একটি! সি'থুলহু ফ্যাটগন নাগন !, এবং তারপরে আমরা হৃদয় এবং জীবিতদের খাওয়াতে ফিরে এসেছি এবং জীবনের বৃত্তটি পূর্ণ হয়ে গেছে।
গেম ডিজাইন আলাদা নয়। আপনাকে নির্দিষ্ট ভাষার সাথে সমান্তরালভাবে কোনও নির্দিষ্ট খেলা শেখার প্রয়োজন হবে না, বরং ভাষা প্রতীকী পরিবারগুলির মতো সেই মানসিকতাটি পরিচালনা করে এমন কিছু প্রতীকী প্রতিনিধি খেলা শিখতে হবে। এছাড়াও, প্রচুর খাওয়ার ও জীবিত রয়েছে। একটি মরিচ ক্র্যাকার পান।
ঠাঁই এখানে (যেমন আমি এটি কমপক্ষে দেখতে পাচ্ছি) তা হ'ল আপনি বিষয়গুলির একটি বৃহত তালিকা কভার করতে চান। এটি একটি চরিত্রের শীটে দক্ষতা টিকিয়ে দেওয়ার মতো - আপনি কোনও পরিস্থিতি সামাল দেওয়ার জন্য নিজের জন্য আরও ব্যবস্থা তৈরি করছেন। হ্যাঁ, তারা স্তর-সক্ষম, তবে বোর্ড জুড়ে যতগুলি জিনিস আপনি পারেন তার মধ্যে দু'একটি পয়েন্ট থাকার অর্থ এই যে যখন কোনওটি ব্যবহারের সময় আসে তখন আপনি শুরু থেকে শুরু করেন না এবং কী কৌশলগুলি উপলব্ধ তা আপনি জানেন available আপনার দ্বারা স্কেল আপ করার জন্য।
সুতরাং, দেখুন।
প্রথমে আপনি দাঁত কাটাতে চান। আপনি যখন কোনও নতুন প্ল্যাটফর্মকে টার্গেট করতে শিখছেন, বা যখন আপনি স্মৃতি থেকে সেরে উঠছেন তখন এগুলিও কার্যকর are এগুলি দ্রুত হতে বোঝাচ্ছে, দুর্দান্ত নয়।
ক্রমানুসারে:
এগুলি নামানোর পরে, আপনি একটি প্ল্যাটফর্ম লক্ষ্য করতে প্রস্তুত, এবং শেখার শুরু হতে পারে।
এই কোন নির্দিষ্ট অনুক্রম হয়। আপনি যথাযথ দেখতে এগুলি পুনরায় সাজিয়ে নিতে পারেন। আমি প্রত্যেকের সাথে মুষ্টিমেয় উদাহরণ দিতে যাচ্ছি, তবে সেগুলি আদর্শিক নয়; যদি কোনও ভিন্ন গেম আপনাকে একই অভিজ্ঞতা দেয় এবং একটি ধারাবাহিক পাঠের অংশ হিসাবে যথেষ্ট ছোট হয় তবে এটি অদলবদল করুন। ব্যবহারিক কারণে, স্ক্রিন রেন্ডারিং এবং ইনপুট তুলনামূলকভাবে দ্রুত দক্ষ হওয়া ভাল; আপনি তাদের পুরো ব্যবহার করতে পারবেন। বিমূর্ততা ক্লাস লেখার চেষ্টা করার আগে কয়েকটি গেম অপেক্ষা করুন; আপনি একটি নিষ্পাপ বিমূর্ততায় ধরা পড়তে চান না ।
... এহ। আমি বিরক্ত হচ্ছি.
Tetris
খুব সাধারণ গেম, যদি আটকে যায় তবে ছিঁড়ে ফেলার জন্য প্রচুর ওপেন সোর্স ক্লোন out 2 ডি গ্রাফিক্স, ইনপুট হ্যান্ডলিং, স্কোরিং ইত্যাদির প্রাথমিক বিষয়গুলি শেখায়
তারপরে এই আসল ধারণাটি নিন এবং এটি একটি স্পিনে রাখুন। আমি কলেজে কম্পিউটার গ্রাফিক্স ক্লাসের জন্য টেট্রিসের একটি 3 ডি সংস্করণ লিখে থ্রিডি গ্রাফিক্স / ওপেনগল এর প্রাথমিক বিষয়গুলি শিখেছি ।
গেমডেভ.নেমে একটি ভাল নিবন্ধ রয়েছে যা গেমের বিকাশের বিষয়ে ক্রমাগতভাবে শেখার জন্য গেমগুলির অগ্রগতির প্রস্তাব দেয় । তালিকা থেকে আমার প্রিয় পরামর্শটি এই গেমগুলিকে প্রকৃতপক্ষে পোলিশ করা। সম্পূর্ণরূপে শেষ করুন, একটি পুনঃনির্মাণযোগ্য স্থানে।
তালিকাটি নিম্নরূপ: (এর কয়েকটি অন্যান্য উত্তরে দেওয়া হয়েছে):
আমি আমার সমস্ত ছেলেদের একচেটিয়া সাথে শুরু করতে চাই। আমি সাধারণত অনুশীলনের ভিত্তি হিসাবে ব্রেট শুচার্টের একচেটিয়া "কোড কাটা" ব্যবহার করি তবে আমি এতে অনেক কিছু যুক্ত করি। আমি সত্যিই এটি করতে পছন্দ করার বিভিন্ন কারণ রয়েছে।
আমি ভাল কোডিং অনুশীলন (ডিজাইনের নিদর্শন, টিডিডি, সলিড, ধারাবাহিক একীকরণ ইত্যাদি) সম্পর্কে গভীরভাবে যত্ন করি এবং আমার বিকাশকারীরা যখন এই অনুশীলনটি করেন তখন তাদের প্রচুর পরিমাণে বাধা দেয়।
একচেটিয়া বিধি সম্পর্কে সবাই খুব বেশি জানেন এবং পুরো গেমটি একদিনেই শেষ করা যায়। এটি নতুন বিকাশকারীদের দ্রুত জয় দেয় এবং সত্যই তাদের ব্যস্ততা অর্জন করে।
প্রাথমিক প্রয়োজনীয়তা কীবোর্ড নিয়ন্ত্রণ দিয়ে শুরু হয়, তবে আমি পরে মাউস নিয়ন্ত্রণের জন্য একটি প্রয়োজনীয়তা যুক্ত করি। এটি বিকাশকারীদের বেশ কয়েকটি বিষয়ে, কীভাবে বিদ্যমান কোডটি রিফ্যাক্টর করতে হবে, সিস্টেমের অংশগুলি পরিবর্তিত করে কংক্রিটের ক্লাসের পরিবর্তে ইন্টারফেসে পরিবর্তন করা, আরও ভাল / যথাযথ বিমূর্ততা, কোন ইউনিট পরীক্ষা দিতে হবে না, ইউনিট পরীক্ষা কেন করা উচিত, ইউনিট পরীক্ষায় কেন এবং কী কী ভাল ইউনিট পরীক্ষার জন্য তোলে।
কখনও কখনও আমরা আরও পরিশীলিত এআই প্লাগ করি, কখনও কখনও আমরা তা করি না। কখনও কখনও আমরা অন্যান্য বোর্ড গেমসের সাথে চুটস এবং মই বা অন্য কিছু এর মতো আরও জটিল যুক্তি দিয়ে কাজ করি। কখনও কখনও আমরা বোর্ড গেমগুলি সম্পূর্ণভাবে বিচ্ছিন্ন করি এবং একটি জুজু খেলা বা ব্ল্যাকজ্যাক করি।
আমার জন্য সত্যিকারের গুরুত্বপূর্ণ অংশটি হ'ল লোকেরা দ্রুত জয় লাভ করে এবং আপনি যখন ভালো প্রোগ্রামিংয়ের মান অনুসরণ করেন তখন আপনি সফ্টওয়্যারটি কতটা নমনীয় করতে পারবেন তা তারা দেখে। এই অনুশীলনগুলি খুব দ্রুত আত্মবিশ্বাস তৈরি করে। কখনও কখনও, আরও অভিজ্ঞ বিকাশকারীরা নিজেরাই এগুলি করতে পছন্দ করেন, কেবল আরও জটিল প্রকল্পগুলি থেকে বিরতি পেতে বা তারা সবে শিখেছেন এমন একটি নতুন কৌশল অনুশীলন করতে (ডিমেটারের আইন?)।
চয়ন করুন-আপনার-সাহসিক
এমন কোনও বন্ধুর কাছ থেকে এই টিপটি পেয়েছেন যিনি গেম তৈরি করে প্রোগ্রামিং শুরু করেছিলেন, এটি আপনার অ্যাডভেঞ্চার বইয়ের মতোই । এটি মূলত এর মতো আউটপুট সহ একটি সাধারণ পাঠ্য অ্যাডভেঞ্চার গেম:
You are standing in a forest clearing in the middle of the night. You hear
some wolves howl in the distance. Should you:
a) make camp for the night
b) go further north
> _
এই জাতীয় একটি গেম তৈরি করা আপনাকে গেমলুপ, বেসিক কনসোল ইনপুট এবং বেসিক স্ক্রিপ্টিং শেখানো উচিত। গেমটি লেখার জন্য আপনার কোনও গ্রাফিক্স ইঞ্জিনের প্রয়োজন না হওয়ায় এটি শুরু করা খুব সহজ এবং কোনও নবজাতকের পক্ষে ঝাঁপিয়ে পড়া সহজ । উন্নত নতুনরা সম্ভবত স্ক্রিপ্টিং ইঞ্জিনটি লিখতেন write
নবাগত প্রোগ্রামারদের সাথে আমার অভিজ্ঞতায়, অগ্রগতি সাধারণত কিছুটা এমন হয় বলে মনে হয়:
ব্রেকআউট, পং বা অস্টেরয়েড।
একটি গেম এবং একটি গেম প্রোটোটাইপের মধ্যে বিশাল পার্থক্য রয়েছে । যদি আপনি নিজের স্বপ্নের গেমটি শেষ করার বিষয়ে গুরুতর হন তবে আপনার "প্রবেশ স্তর" গেমগুলি সেই পথেই শেষ করা উচিত। গেমের গেমপ্লে অংশটি তৈরি করা কেবল অর্ধেক যুদ্ধ। মেনু এবং উচ্চ স্কোর এর মতো অতিরিক্ত সমস্ত জিনিস প্রায়শই উপেক্ষা করা বা উপেক্ষা করা হয় তবে তারা কারও প্রত্যাশার চেয়ে বেশি সময় নেয়।
অন্যান্য উত্তরে কিছু ভাল পরামর্শ রয়েছে, তবে আমি কেবল আমার ভোটে টস করতে চাই: এমন কোনও কিছু দিয়ে শুরু করুন যা মোকাবেলা করার পক্ষে খুব জটিল নয়।
পং একটি ভাল উদাহরণ।
লক্ষ্যটি হ'ল: গেম-ডিজাইন এবং নিয়ম-সেটকে এতটাই মস্তিষ্ক-মৃত তৈরি করুন যে আপনি যে সমস্ত নতুন জিনিস শিখছেন (একটি ভাষা, একটি প্ল্যাটফর্ম, একটি এপিআই) শিখতে আপনার সমস্ত মনোযোগ কেন্দ্রীভূত করতে পারেন এবং ক্রমাগত করতে হবে না গেমটি কীভাবে কাজ করে তা নির্ধারণের জন্য বিরতি নিন।
একবার আপনি যাওয়ার পরে, আপনি দেখতে পাবেন যে পংটি প্রথম ব্লাশ দেখে মনে হচ্ছে তার চেয়ে কিছুটা জটিল। (আমি একজন লোকের প্রোগ্রামিং শেখাচ্ছি এবং সে তার শিখার প্রকল্প হিসাবে পং ব্যবহার করছে We আমরা কয়েকটি বৈশিষ্ট্য যুক্ত করেছি এবং এখন এই দুর্দান্ত বৈশিষ্ট্যগুলি কীভাবে কীভাবে করতে হয় তা শিখিয়ে প্রোগ্রামে শেখা থেকে তিনি বিভ্রান্ত হচ্ছেন :)
আপনি একবার অ্যাপ্লিকেশন # 1 সব উপায় মাধ্যমে সম্পন্ন করেছি পর্যন্ত এটা দিতে / অন্যদের কাছে বিক্রি করতে প্রস্তুত, তাহলে কোনো কিছুর উপর একটু বেশি জটিল (Tetris, দু: সাহসিক কাজ বা যাই হোক না কেন আপনার মত) কিন্তু নিতে, একটি নতুন প্রযুক্তি শেখার শুরু করতে, মেক আপনি মস্তিষ্ক-মৃত সহজ প্রোগ্রাম যে জিনিস।
অন্যান্য উদাহরণ:
তবে, আবারও - এমন কিছু দিয়ে শুরু করুন যা খুব সহজ-সরল, যাতে আপনি আসলে কিছু সম্পূর্ণ করতে পারেন এবং ফিরে তাকাতে পারেন এবং এতে কী জড়িত তা দেখতে পান। কোনও ভাষা / প্ল্যাটফর্ম / এসডিকে / ইঞ্জিনে ওয়ান অ্যাপ লেখা এবং জিরো অ্যাপ্লিকেশন লেখার মধ্যে পার্থক্য হ'ল বিশাল । 1 এবং 2, বা 2 এবং 5 এর মধ্যে পার্থক্য অনেক কম, সুতরাং আপনি আরও বড় পদক্ষেপ নিতে পারেন, তবে 0 থেকে 1 ধাপটিকে কিশোর-ক্ষুদ্র একটি করে তুলুন; এটা আপনার চেয়ে বড় হবে!
Flappy Bird
আলাইক। পেশাদার প্রোগ্রামার হিসাবে, এটি একটি বিকেলের কাজ (ভাল, এটি "সুন্দর" পেতে একটি সপ্তাহান্তে) তবে, অন্যটিকে প্রোগ্রামে শেখানোর সময় আমরা শিখেছি যে এটি আসলে খুব কম জটিলতা পেয়েছে। আবার একটি শূন্যের থেকে অনেক বেশি অভিজ্ঞতা এবং একবার আপনার কাছে এলে কীভাবে এগিয়ে যাওয়া যায় সে সম্পর্কে আপনার আরও ভাল ধারণা থাকবে।
এই ওয়েবসাইটটি দেখুন: 12 কম্পিউটার সায়েন্স গেম প্রকল্পের আইডিয়া
এর মধ্যে কয়েকটি গেমের মধ্যে অন্যরা যা বলেছে তা অন্তর্ভুক্ত করে:
তবে এটি এমন কয়েকটি অন্যান্য গেম সম্পর্কেও কথা বলেছে যা আপনি যেমন তৈরির চেষ্টা করতে পারেন:
এছাড়াও, এটি প্রতিটি গেমের জন্য অসুবিধার ধারণা দেয় এবং আপনার গেমগুলি কীভাবে মোকাবেলা করা উচিত তার পরিকল্পনা: যেহেতু আপনাকে প্রথমে কী করা উচিত তা বোঝায়:
অনেক লোক ব্রেকআউট দিয়ে শুরু করে কারণ এটি বৈশিষ্ট্যযুক্ত:
কোনও গেম - বা কোনও সফ্টওয়্যার - লেখার সবচেয়ে কঠিন অংশটি কী করা উচিত তা নির্ধারণ করে। আপনার একদম দরকার! এটি বিদ্যমান গেমটির ক্লোন তৈরির মজাদার অংশ: ইতিমধ্যে অনুমানটি বিদ্যমান। আপনার স্পেকটি হ'ল "পণ্যটি অবশ্যই অন্যান্য পণ্য যা করতে পারে তা করতে হবে" এবং আপনার কাছে যদি অন্য গেমটির অনুলিপি থাকে তবে তা যাচাই করা খুব সহজ।
একবার আপনার কী করা উচিত তা সন্ধান করার পরে, কীভাবে এটি করতে হবে তা নির্ধারণ করে আপনি যদি একজন দক্ষ প্রোগ্রামার হন তবে তা সত্যিই এত কঠিন নয়। আমি কোনও দক্ষ বা অভিজ্ঞ প্রোগ্রামার বলতে চাইছি না; এটি বোঝায় যে আপনি যা করতে চেষ্টা করছেন তার বেশিরভাগটি কীভাবে করতে হবে তা আপনি ইতিমধ্যে জানেন। তবে আপনাকে কীভাবে বিমূর্তিতে চিন্তাভাবনা করতে হবে এবং সমস্যা সমাধান এবং যৌক্তিক চিন্তার দক্ষতা থাকতে হবে যা প্রোগ্রামিংয়ের মৌলিক। আপনি যদি এটি করতে পারেন, তবে আপনি কিছু করতে পারেন।
এটি বলার পরে, বেশিরভাগ লোকেরা সত্যিই সাধারণ কিছু লিখে গেম লিখতে শেখার চেষ্টা সম্পর্কে যা বলেন তার সাথে আমি একমত নই। আপনি যে প্রচেষ্টাটি করেছেন তাতে পুরষ্কারটি সরাসরি আনুপাতিক। যদি আপনি সত্যিই সাধারণ গেমটি লিখে গেমগুলি লিখতে শিখেন তবে শেষে আপনি যা জানবেন তা হ'ল কীভাবে সত্যিই সাধারণ গেমগুলি লিখবেন এবং এটি আপনাকে খুব ভাল করবে না।
অন্যদিকে, আপনি যদি অপ্রতিরোধ্য কিছু দিয়ে শুরু করেন তবে আপনি এটি কখনই শেষ করবেন না। সুতরাং মাঝারিভাবে চ্যালেঞ্জের কিছু দিয়ে শুরু করুন যা আপনাকে গুরুতর সমস্যার মোকাবেলা করবে। 2 ডি কনসোল-স্টাইলের আরপিজি বা পার্শ্ব-স্ক্রোলিং প্ল্যাটফর্মার বাস্তব গেম প্রোগ্রামিং ধারণাগুলি শেখার খুব ভাল উপায়।
এটি আপনার বর্তমান দক্ষতা কিসের উপর নির্ভর করে। আপনি যদি প্রোগ্রামিংয়ে তুলনামূলকভাবে নতুন হন, তবে লোকেরা যে নির্দিষ্ট গেমগুলির পরামর্শ দিয়েছিল তার একটিতে যান। অন্যথায়, কোন ধরণের গেম (গুলি) আপনাকে নিজের অভিজ্ঞতা ভাল ব্যবহার করতে দেয় সে সম্পর্কে আপনার চিন্তা করা উচিত।
যখন আমি আমার প্রথম গেমটি শুরু করেছি, আমার শূন্য গেম বিকাশের অভিজ্ঞতা ছিল, তবে আমি কয়েক বছর ধরে এন্টারপ্রাইজ / লাইন অফ বিজনেস অ্যাপ্লিকেশন বিকাশ করছি। আমার প্রথম গেম প্রকল্পটি একটি টার্ন-ভিত্তিক কৌশল খেলা ছিল এবং স্থাপত্যিকভাবে বলতে গেলে এটি কোনও এন্টারপ্রাইজ অ্যাপ্লিকেশন থেকে আলাদা দেখায় না। এটি একটি ক্লায়েন্ট / সার্ভার সিস্টেম ব্যবহার করেছে এবং ডুপ্লেক্স ডাব্লুসিএফ পরিষেবা চ্যানেলের মাধ্যমে যোগাযোগ ঘটে। বেশিরভাগ প্লেয়ার অপারেশনগুলি "অর্ডার" হিসাবে সারিবদ্ধ ছিল এবং টার্ন শেষে সার্ভারে প্রেরণ করা হয়েছিল। সমস্ত টার্ন প্রক্রিয়াজাতকরণ সার্ভারে সংঘটিত হয়েছিল, এর পরে প্রতিটি ক্লায়েন্টকে গেমের বিশ্বব্যাপী আপডেট পাঠানো হয়েছিল।
সেই প্রথম প্রকল্পটি আমাকে পরিচিত অঞ্চলে আমাকে শুরু করার সময় গেম বিকাশে আমার পথে যেতে দেয়। প্রকল্পটি বিকশিত হওয়ার সাথে সাথে আমি আরও গেম ডেভেলপারের মতো এবং কম এন্টারপ্রাইজ অ্যাপ ডেভেলপারের মতো ভাবতে শিখেছি। শেষ ফলাফলটি বেশ ভালভাবে কাজ করেছে, এবং এটি ব্যাটলশিপ বা টিকি-ট্যাক-টো :) থেকে কিছুটা বেশি চিত্তাকর্ষক ছিল।
নিবলস এবং স্পেস হানাদাররা
তুলনামূলকভাবে সহজ এআই, গ্রাফিকস, গেমপ্লে, নিয়ন্ত্রণগুলি এবং আপনি যদি এটি যুক্ত করতে না চান তবে তাদের কাছে সাউন্ড ইফেক্ট বা সংগীত থাকতে হবে না MS এমএস-ডস-এর জন্য কিউব্যাসিকে কীভাবে প্রোগ্রাম করবেন তা শিখতে আমি এই দুটি দিয়ে শুরু করেছি এবং আমি মনে করি তারা দুর্দান্ত প্রথম গেমস। প্যাক ম্যান আমার অন্য পছন্দ হবে।
মুনল্যান্ডার স্টাইলের গেমগুলি দুর্দান্ত (যেখানে আপনার মাধ্যাকর্ষণ দ্বারা প্রভাবিত রকেটশিপ রয়েছে, খেলোয়াড়রা নিয়ন্ত্রণের দিকনির্দেশ এবং থ্রাস্ট, থ্রাস্ট ব্যবহারের সময় সীমিত জ্বালানী)। খুব সাধারণ পদার্থবিজ্ঞান বাস্তবায়নের অভিজ্ঞতা অর্জন এবং সংঘর্ষের সিস্টেমটি বেশ আদিম হতে পারে। চিন্তার জন্য কোনও এআই নয় এবং সবচেয়ে গুরুত্বপূর্ণ এটির মজা এবং আসক্তি :)
গন্টলেট এর মতো কিছু কারণ আপনার প্রয়োজন একটি সত্তা সিস্টেম, শত্রু এআই, পিকআপস, টাইল-মানচিত্র, সংঘর্ষ সনাক্তকরণ, স্কোরিং ইত্যাদি It's এটি সবই পেয়েছে তবে এটি অভিভূত হওয়ার মতো নয়।
একটি মিনি জেলদা ক্লোন ভাল এবং কিছু দক্ষতা অনুশীলন করে যা এখানে খুব বেশি উল্লেখ করা হয়নি। টাইলসের একটি বড় মানচিত্র এবং সাধারণ 8-উপায় চলাচল নিয়ন্ত্রণগুলি স্ক্রোল করা জানা ভাল। বোনাস পয়েন্ট যদি আপনি শত্রু করতে পারেন তবে আমি খুব বেশি চিন্তা করব না।
আমি কয়েকটি বেশি টেট্রিস ক্লোন তৈরি করেছি। প্রতিবার আমি এটি করেছি যদিও আমি এটি কিছুটা আলাদা করেছি। আজকাল, আমি সাধারণত কিছু ধরণের অস্টেরয়েড ক্লোন তৈরি করি। আমি কয়েকটি মিসাইল কমান্ড স্পিন অফও করেছি।
আমি বেসিক গেম প্লে দিয়ে শুরু করেছি এবং এতে আরও স্টাফ, পাওয়ার আপস ইত্যাদি যোগ করার পরিবর্তে চলেছি।
আমি সর্বদা একটি ট্যাঙ্কস / গরিলা / কৃমি খেলা দিয়ে শুরু করতাম। এটি আপনাকে সাধারণ গ্রাফিকাল ডিসপ্লে, এবং ব্যবহারকারীর ইনপুট পড়ার অনুশীলন করতে হবে, সাথে সাথে একটি গেম লুপ প্রক্ষেপণে অভিকর্ষ প্রয়োগ করে এবং সংঘর্ষ সনাক্তকরণের জন্য পরীক্ষা করে।
এর পরে খুব সাধারণ প্ল্যাটফর্মার বা শ্যুট-ইম-আপের মতো একটি গেম আসবে যেখানে আপনাকে গরিলাসের জন্য কাজ করা ইনপুট বিবৃতিগুলির চেয়ে রিয়েল টাইমে ব্যবহারকারীর ইনপুট পড়তে হবে :)
সলিটায়ার (বা সত্যিকারের কোনও কার্ড গেম) একটি নতুন ইউআই সিস্টেমের সাথে আপনার হাতকে নোংরা করার জন্য একটি ভাল খেলা, কারণ এটি আপনার ব্যবহার করার জন্য প্রচুর পরিমাণে উইজেট এবং নিয়ামক ইন্টারঅ্যাকশন প্রতিক্রিয়া পদ্ধতি ব্যবহার করে। প্লাস এর জন্য যুক্তিটি সোজা এবং দ্ব্যর্থহীন, যাতে আপনি শেখার উপর মনোনিবেশ করতে পারেন এবং গেমের নকশা তেমন নয়।
রিয়েল টাইম সিমুলেশন গেমসের জন্য, আমি পংকে সর্বদা একটি ভাল সাধারণ সূচনা পয়েন্ট হিসাবে সুপারিশ করতাম, কারণ নকশাটি সোজা, পাশাপাশি নিয়ামক ইন্টারফেস, যাতে আপনি সিস্টেমের মাংসে যেতে পারেন - শারীরিক সিমুলেশন।
আমি সর্বদা জোর দিয়েছি যে আপনি যদি একজন গেম প্রোগ্রামার হন তবে আপনাকে কিছুটা স্পেস আক্রমণকারী তৈরি করতে সক্ষম হওয়া উচিত । হেক, গেমটি যথেষ্ট সহজ যে আপনি নিজেরাই গ্রাফিকগুলি করতে সক্ষম হবেন।
আপনার পোর্টফোলিওতে ছোট গেমগুলির একটি নির্বাচন বেশ কার্যকর হওয়ার অতিরিক্ত উপকার হিসাবে নির্বাচন করা, উদাহরণস্বরূপ, যদি আমি কোনও নতুন প্রোগ্রামিং ভাষা বা ফ্রেমওয়ার্ক শিখি তবে আমি প্রায়শই আমার সহজ গেমগুলির মধ্যে একটি পোর্ট করব যাতে কীভাবে নতুন উপায় দেখা যায় জিনিসগুলি করা মূলরূপে যেভাবে লেখা হয়েছিল তার সাথে মিলে যায়।
এটি ইতিমধ্যে আপনার নিয়মিত প্রোগ্রামার হিসাবে কী দক্ষতার উপর নির্ভর করে। আপনার গণিতে কি কাজের দরকার আছে? আপনার গ্রাফিক্স জ্ঞান? আপনি উভয় মোড়ানো অধীনে আছে?
যদিও আমি সাধারণভাবে মনে করি যে টেট্রিস এবং ব্রেকআউট আমার দু'টি সূচনাও হবে। এর থেকে সহজ যে কোনও কিছুই পর্যাপ্ত উদ্দীপনা দেয় না। টেট্রিস কীভাবে আপনার ডেটাটিকে সাময়িকভাবে লেআউট করবেন তার একটি ভাল পরীক্ষা, ব্রেকআউট একটি হালকা গণিতের উদাহরণ। আমি সবসময় মানুষকে উচ্চ লক্ষ্য অর্জনের জন্য বলি, লক্ষ্যটি আটকে যাওয়া এবং একটি সমাধান নিয়ে আসা।
তার পরে আকাশের সীমা রয়েছে। আবার, উচ্চ লক্ষ্য। Slালু অঞ্চল, পারালালাক্স সহ একটি প্ল্যাটফর্মার চেষ্টা করুন এবং আপনি 2 ডি টেক হ্যান্ডির একটি ভাল ব্যাগ পেয়েছেন। একটি পিনবল যুক্ত করুন (হতাশ হওয়ার জন্য প্রস্তুত করুন) এবং আপনার গণিতের উন্নতি হবে।
সেখান থেকে তৃতীয় মাত্রায় যান, মূল দক্ষতা শিখুন (এনিম, রেন্ডারিং) এবং ভাল গেমগুলির বিভিন্ন ধরণের ক্ষেত্রে আপনার তুলনামূলকভাবে সুসজ্জিত হওয়া উচিত।
আমার প্রথম খেলাটি সুপার মারিওর মতো কিছু ছিল।
চারদিকে ঘোরাফেরা করুন, বাধা এড়ান, লাফিয়ে উঠুন। এবং এই সমস্ত কাজগুলি কোনও পদার্থবিজ্ঞানের গণনা ছাড়াই সহজেই করা যায়।
একটি সাধারণ 2 ডি জিনিস গ্রহণ করা এর আদর্শ, কারণ আপনি একটি নির্দিষ্ট প্রয়োগ / কাঠামো / ইঞ্জিনের উপর বেশি নির্ভর করবেন না।