গেম ডেভলপমেন্টের হাতেখড়ি: যেভাবে আপনিও হয়ে উঠতে পারেন একজন গেম ডেভেলপার

কম্পিউটারে অথবা গেম কনসোলে (এক্সবক্স) ফার ক্রাই ফাইভ, কল অফ ডিউটি, ফাইনাল ফ্যান্টাসি অথবা এনড্রয়েড, আইওএসে বিভিন্ন অনলাইন মাল্টি-প্লেয়ার গেম খেলতে খেলতে আপনার ইচ্ছা হলো গেম তৈরি করবেন। আর হয়ে উঠবেন একজন টপ গেম ডেভলপার। কিন্তু বুঝতে পারছেন না কোথায় থেকে শুরু করতে হবে, কি কি শিখতে হবে অথবা কতজনের টিম নিয়েই কাজ শুরু করবেন। সেক্ষেত্রে এই আর্টিকেলটি আপনার জন্য।

১. আইডিয়া

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

Source: Asia Sentinel

 যেমন

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

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

২. গেম ইঞ্জিন

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

Source: Medium.com

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

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

ইউনিটি ফাইভ: Click Here.

আনরিয়েল ইঞ্জিন: Click Here.

৩. এসেট তৈরি

গেমের সবকিছু যেসব গেমের মধ্যে দেখা যায় যেমন বাড়িঘর, পাথর, গাছপালা, মিউজিক, সাউন্ড ইফেক্টসহ যা কিছু আছে সবকিছু গেম এসেটের অন্তর্ভুক্ত। ক্যারেক্টার ফিজিক্স, গাড়ি, আইকন, এ.আই, স্পেশাল ইফেক্ট, নেটওয়ার্কিং এসবও গেম এসেট। এইসব এসেট বিভিন্ন গেম ইঞ্জিনের মাধ্যমে ব্যবহার করেই মূলত গেম তৈরি হয়।

Source: Guiding Tech

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

স্কেচআপ : Click Here.

ব্লেন্ডার : Click Here.

৪. কোডিং এবং আর্টস

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

Source: Instabug Blog

তাই হতাশ হওয়ার কিছু নেই। তবে আপনাকে এক পর্যায়ে কোডিং শিখতেই হবে। সেক্ষেত্রে যেসব প্রোগ্রামিং ল্যাংগুয়েজে আপনি হাত রপ্ত করতে পারেন সেগুলো এক পলকে দেখে নিতে পারেন।

C++

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

C sharp অথবা Java

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

HTML 5

শুধুমাত্র এইচটিএমএল ফাইভ দিয়েও অনেক ধরনের গেম তৈরি করা যায়।

৫. ডেভলপার টিম

Source: KnowTechie

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

  1. কনসেপ্ট আর্টিস্ট: যিনি বিভিন্ন ক্রিয়েটিভ ম্যাটারিয়েলসহ স্কেচ, ড্রাফট, ক্যারেক্টার ক্রিয়েশন, ম্যাপ, অবজেক্টের দ্বিমাত্রিক ও ত্রিমাত্রিক ডিজাইন করেন।
  2. লেভেল ডিজাইনার: বিভিন্ন থার্ডপার্টি ডিজাইনিং টুল যেমন আনরিয়েল ইডি অথবা ত্রিডি আর্টস প্যাকেজের কাজসহ, দ্বিমাত্রিক ও ত্রিমাত্রিক মডেলিং এর কাজ করে থাকে। এছাড়া গেম ম্যাপিং ও এর কাজের অন্তুর্ভুক্ত।
  3. মডেলার: সাধারণত মডেলারের কাজ হচ্ছে দ্বিমাত্রিক আর্টওয়ার্ককে ত্রিমাত্রিক এসেটে কনভার্ট করা আর পলিগনাল মডেলিং করা।
  4. এনিমেটর: সাধারণত ক্যারেক্টারের কন্ট্রোল সিস্টেম আর গেমের মোশন সিস্টেম নিয়ে কাজ করে থাকে।
  5. সফটওয়্যার ডেভলপার: কোডিং আর গেমের ফাংশনাল ইন্টেগ্রেটিং আর ফন্ট-এন্ড ও ব্যাক-এন্ড প্রোগ্রামিং একজন সফটওয়্যার ডেভলপারের কাজের অংশ হয়ে থাকে।

এছাড়া টিমে একজন ওয়েবসাইট ডিজাইনার, সকল বাজেট নিয়ন্ত্রণ ও অভ্যন্তরীণ সমস্যা সমাধানের জন্য প্রজেক্ট ম্যানেজার আর কোয়ালিটি ইঞ্জিনিয়ারের ও প্রয়োজন হয়ে থাকে।

Source: Prey indie

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

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

প্রিয় ইয়াসা: