مقالات

راهنمای ساخت بازی برای اولین بار؛ معرفی ابزار و منابع ضروری

Guide To Making The Game For The First Time; Introduction Of Tools And Resources Needed

خیلی وقت پیش، اکثر قریب به اتفاق افراد جامعه بازی‌های ویدئویی را مثل یک اسباب بازی مدرن آن هم مختص کودکان و نوجوان قلمداد می‌کردند که حتی حسابش را از هالیوود و سریال‌های تلویزیونی جدا می‌دانستند. کمی بعد اما دنیای گیم با آمار و ارقام دیوانه‌وارش عملاً تبدیل به یک صنعت پرسود و کلان شد که حالا هالیوود هم نمی‌تواند در برابرش ادعایی داشته باشد. اصلاً خاصیت بازی‌های ویدئویی این است، ما به لطف این هنر تعاملی یاد می‌گیریم بیشتر با داستان و کاراکترها ارتباط برقرار کنیم تا بلکه روحیه جاه طلب خودمان را به آرامش برسانیم. حالا شاید عده‌ای ترجیح بدهند علاوه بر بازی کردن، بازی خودشان را هم بسازند و چه بسا درآمدی هم داشته باشند. طبق آخرین آمار و ارقام یک بازیساز ساده در کشورهای خارجی می‌تواند بیش از 70 هزار دلار درآمد سالیانه داشته باشد. مسلماً هیچ کس بدش از پول نمی‌‌آید، خصوصاً وقتی که پای صنعت گیم هم در میان باشد. به همین خاطر گیمرها ترجیح می‌دهند از راه ساخت بازی و حضور در پروسه توسعه این عناوین درآمد خوبی به جیب بزنند. اما از بخت بد این مسیر هم مثل بازار رمز ارزها و هزار پدیده نوظهور دیگر با طبل‌های توخالی افراد غیرمتخصص و بعضاً کلاهبردار همراه شده که دست آخر ذوق هنرجو را از ساخت بازی کور می‌کنند. با این حال از Sony بگیرید تا خود Microsoft در سالیان اخیر سعی کرده‌اند برنامه‌های جامعی برای حمایت از بازیسازان و گسترش بازیسازی در سراسر جهان تدارک ببینند. در این مطلب اما کمی خودمانی‌تر چگونگی شروع ساخت بازی را بررسی کرده و در نهایت ابزارهای کاربردی لازم را هم معرفی می‌کنیم. برای مشاهده ادامه مطلب با وب سایت تک سیرو همراه باشید.

تحصیلات آکادمیک حرف اول را می‌زند

این روزها احتمالاً دیده‌اید یا شنیده‌اید که مردم دلیل موفقیت ایلان ماسک و بیل گیتس را را در فاصله گرفتن‌شان از تحصیلات آکادمیک و دانشگاهی می‌دانند. اما راستش را بخواهید این‌ها صرفاً یک سری شعار اینستاگرامی و مطالب زرد هستند که تنها فایده‌ی‌شان زده کردن جوانان از تحصیلات آکادمیک است. از بخت بد کمتر کسی اشاره می‌کند که همین ایلان ماسک در دوران نوجوانی‌اش یک بازی واقعاً جذاب کامپیوتری ساخت. پس انصراف از تحصیل آن‌ها هم حداقل روی کاغذ بدون پشتوانه نبوده است. حالا فکرش را بکنید، در ایران همین تحصیلات آکادمیک هم به ندرت پیدا می‌شوند و اگر مخاطب یک روز به سرش زد که قید همین حداقل‌ها را هم بزند تقریباً می‌توان گفت بازی‌سازی ما در داخل کشور به ورطه نابودی کشیده می‌شود. با این حال همچنان علاقه مندان در داخل کشور می‌توانند تحصیلات آکادمیک بازیسازی را دنبال کنند. خوشبختانه هم رشته‌های دانشگاهی حالا به این عرصه پر و بال داده‌اند و هم این که هنرستان‌ها نیز بیش از پیش به آن اهمیت می‌دهند. حتی آموزشگاه‌ها و آکادمی‌های آموزشی متعددی هم توسط صاحب نظران ایرانی برای آموزش تاسیس شده اند که البته گواهی معتبر مربوط به آن را هم اعطا می‌کنند. از طرفی گستردگی حرفه‌های مربوط به بازیسازی نیز روز به روز بیشتر می‌شود. به عنوان مثال ممکن است که شما ترجیح بدهید به عنوان یک برنامه نویس که مدرک کارشناسی مهندسی کامپیوتر را دریافت کرده است، ادامه حرفه‌ی‌تان را به عنوان یک برنامه نویس بازی‌ساز دنبال کنید یا این که به سمت و سوی کارگردانی و طراحی‌ هنری این عناوین بروید.

سلیقه‌ی‌تان را بشناسید

بازیسازی یک رشته تخصصی و گسترده است! درست مثل یک پزشک عمومی که بعدها می‌تواند در حوزه‌های مختلفی متخصص شود، بازیسازان نیز عموماً از همان ابتدا تکلیف‌شان را با خودشان معلوم می‌کنند. اگر چه همیشه توصیه می‌کنند که محدودیت خاصی برای خودتان قائل نشوید، اما توصیه‌ی ما این است که تخصصی‌تر در حوزه بازیسازی فعالیت کنید. به عنوان مثال اگر سلیقه‌ی‌تان ساخت بازی‌های موبایلی است، بهتر است به جای پرداختن به زرق و برق‌های گرافیکی و گیم پلی پیچیده بازی‌های AAA، هنر خلاقیت و نوآوری در بازی‌های ساده موبایلی را یاد بگیرید که از قضا هم کم خرج‌تر است و هم سود بیشتری هم به دنبال دارد. از طرفی ممکن است که شما ترجیح بدهید در یک سبک یا ژانر خاصی بازی بسازید. نمونه‌اش هم همین میازاکی خودمان! او پیش از این که بازیساز شود حتی یک گیمر حرفه‌ای هم نبود و صرفاً برای سرگرمی بازی می‌کرد. اما بعدها تبدیل به یکی از پرچمداران بازیسازی در تاریخ شد که توانست سبک سولز-لایک را به آن چیزی که امروزه می‌شناسیم مبدل کند. یا مثلاً همین جوزف فارس که اخیراً بازی جدیدش معرفی شده است. او عاشق عناوین Co-op دو نفره است و حتی توانست بازی It Takes Two را بدون پشتوانه خاصی تبدیل به بهترین عنوان سال کند. پس اگر از همین ابتدا تکلیف‌تان با خودتان روشن باشد هم شلختگی ذهنی کمتری دارید و هم این که می‌توانید با انرژی و زمان بیشتری در این زمینه آموزش ببینید.

در کسب مهارت خساست به خرج ندهید

بازیسازی با کسی شوخی ندارد. از قضا یک فرد خبره می‌خواهد که از هر انگشتش یک هنر ببارد. در زمینه برنامه نویسی بازی‌ها باید تمام اصول مهم C++ یا Python را از حفظ باشید. یا در طراحی گرافیک‌ها و انیمیشن حتماً کار با نرم‌افزارهایی مانند Blender، Maya یا Adobe Photoshop را خوب یاد بگیرید تا دنیا و آخرتتان هم تامین شود. اما به صورت کلی شما در وهله اول باید هنر ارتباط گرفتن با سایرین و همین طور کار تیمی را یاد بگیرید. یادگیری، توسعه مهارت‌ها و توانایی‌های جدید ممکن است به شما در پیشرفت شغلی به عنوان یک طراح بازی های ویدیویی کمک کند. پس باید نقاط قوت و ضعف خود را در نظر بگیرید تا بتوانید مهارت‌های لازمه را کسب و یا حتی کشف کنید. مسلماً در صنعتی که دائماً در حال تغییر است خودآموزی به لطف مطالب یوتیوب، وب سایت‌ها و بلاگ‌های آموزشی از نان شب هم واجب‌تر هستند. آنچنان که سم هاوزر خالق GTA هم بارها تاکید کرده است که همیشه از ایده‌های ماد سازان برای عناوین جدید خودش استفاده می‌کند. پس یادگیری و کسب مهارت، بزرگ و کوچک نمی‌شناسد. شما محکوم به یادگیری هستید و باید در این راه نه خساست به خرج بدهید و نه از هیچ چیز دیگری ترس و واهمه داشته باشید. به عنوان مثال دوره‌های آنلاین پلتفرم‌هایی مانند Udemy، Coursera و Khan Academy آموزش‌های جامعی در زمینه بازی‌سازی ارائه می‌دهند و اتفاقاً این روزها هم تبدیل به یک منبع آموزشی محبوب در میان کاربران شده‌اند.

بلند پرواز و واقع گرا باشید!

البته که بازیساز باید بلند پرواز باشد. البته که روحیه جاه طلبی اولین چیزی است که باید در وی نهادینه شود. اما همین دیدگاه ممکن است به مانند یک شمشیر دو لبه باعث نابودی تمام ذوق و شوق یک بازیساز گردد. فراموش نکنید که همه چیز زمانی می‌تواند خوب پیش برود که خشت اول بنا را خوب بگذارید. به همین خاطر نیاز است که بازیسازی را پله به پله مثل هر حرفه و هنر دیگری یاد بگیرید. این یعنی انجام پروژه‌های کوچک و گذراندن دوره‌های کارآموزی  که اتفاقاً یکی از مهم‌ترین گام‌ها برای ورود به دنیای حرفه‌ای بازی‌سازی است. این مراحل به شما کمک می‌کنند تا مهارت‌های فنی خود را تقویت نمائید، تجربه عملی کسب کنید و با چالش‌های واقعی صنعت آشنا شوید. از سوی دیگر، کارآموزی در شرکت‌های بازی‌سازی یا استودیوهای طراحی فرصتی برای کسب تجربه واقعی، یادگیری مهارت‌های جدید و شبکه‌سازی با افراد حرفه‌ای فراهم می‌کند. در نهایت هم ترکیب این دو مسیر، شما را برای ورود به صنعت بازی‌سازی و موفقیت در این حرفه آماده می‌کند.

ابزارهای بازیسازی برای علاقه‌مندان

برخلاف آن چیزی که تصور می‌کنید، ساخت بازی ویدئویی مثل هوا کردن آپولو یا حل نمودن یک معمای طاقت فرسا نیست. حداقل این روزها به لطف موتورهای بازیسازی و ویرایشگرها متعددی که عرضه شده‌اند، کار تا حد بسیار زیادی راحت شده است! حداقل این را می‌دانیم که پروژه‌های ساده و مستقل زیادی را می‌توان با استفاده از همین ابزار ساخت. مسلماً هم اگر رویای ساخت یک بازی بزرگ و حضور در تیم‌های برتر این حوزه را دارید باید از همین مسیر ساده و پر دست انداز عبور کنید. به صورت کلی ابزارها و منابع توسعه بازی به گونه‌ای طراحی شده‌اند که حتی افراد بدون تجربه برنامه‌نویسی هم می‌توانند به آن‌ها دسترسی داشته باشند. خوشبختانه هم بسیاری از این ابزارها نیز به صورت رایگان در دسترس هستند. در ادامه چند ابزار بازیسازی کاربردی و محبوب را معرفی می‌کنیم. برخی از این ابزارها برای ژانر خاصی از بازی طراحی شده‌اند و برخی دیگر برای ساخت بازی‌های AAA به کار می‌روند اما حداقل برای علاقه‌مندان و تازه‌کاران رایگان هستند.

  • GameMaker

GameMaker یک موتور بازی‌سازی دو بعدی و چند پلتفرمی است که از قضا به لطف فضای کاربردی بسیار ساده‌ و پروسه ساخت سریع بازی‌ها یکی از محبوب‌ترین ابزارها برای تولید کنندگان به حساب می‌آید. نکته مثبت موتور این است که که شما را از پیچیدگی‌های برنامه نویسی نجات می‌دهد. این یعنی به لطف زبان برنامه‌نویسی اختصاصی GameMaker Language (GML) بدون نیاز به کد نویسی کار شما را برای ساخت یک بازی ساده دو بعدی راه می‌اندازد. البته دست و بال این موتور برای پیچیدگی‌های فنی مثل فیزیک پیشرفته، انیمیشن‌های سنگین و طراحی‌های گرافیکی خاص مثل Vector اصلاً بسته نیست و حرف‌های زیادی برای گفتن دارد. از طرفی شما می‌توانید بازی‌های خودتان را برای پلتفرم‌های مختلف مثل ویندوز، macOS، iOS، اندروید و HTML5 عرضه کنید. خبر خوب این است که هم اکنون نسخه ارتقا یافته این موتور با نام GameMaker Studio 2 در دسترس می‌باشد که دارای رابط کاربری مدرن و ابزارهای پیشرفته‌تر مثل Sequence Editor برای طراحی انیمیشن‌های پیچیده‌تر است. همچنین در نسخه دوم، ابزارهای اختصاصی جدید برای دیباگ کردن (Debugging) کدها و خطاها اضافه شده است. راستی تا یادمان نرفته این را هم بگوییم که بازی‌های خارق العاده‌ای مثل Undertale و Hotline Miami با همین موتور بازیسازی ساخته شده‌اند.

  • GDevelop

GDevelop یک موتور بازی‌سازی 2D متن‌باز است که اتفاقاً این مورد هم برای ساخت بازی‌ها بدون نیاز به کد نویسی طراحی شده است. برگ برنده این موتور هم رابط کاربری ساده و سریع آن است که فرایند توسعه بازی‌ها را تسهیل می‌کند. به عبارتی، GDevelop هیچ زبان برنامه‌نویسی خاصی ندارد و به جای آن از ابزارهای ساده برای پیاده‌سازی گیم‌پلی استفاده می‌کند. این ویژگی آن را به ابزاری مناسب برای مبتدیان و کسانی که می‌خواهند بازی‌های ساده و خلاقانه بسازند تبدیل کرده است. از همه مهم‌تر، GDevelop به صورت کاملاً رایگان در دسترس است و به همین خاطر هم یکی از محبوب‌ترین ابزارهای بازیسازی به حساب می‌آید. حتی شما می‌توانید با تهیه این ابزار بازیسازی به راهنماهای اختصاصی که توسط سازندگان انجام شده و همچنین 80 فایل نمونه برای نمایش نحوه ساخت بازی‌های مختلف دسترسی داشته باشید. از بازی‌های محبوب ساخته‌شده با GDevelop می‌توان به 2050 (یک بازی پازل ماجراجویی) و The Archers (یک بازی اکشن چندنفره) اشاره کرد. در نهایت باید گفت که این موتور از ویژگی‌های پیشرفته مثل پشتیبانی از گرافیک‌های پیکسلی، انیمیشن‌ها و خروجی بازی بر روی پلتفرم‌های مختلف برخوردار است.

  • Godot

Godot Engine یک موتور بازی‌سازی متن‌باز و رایگان است که می‌تواند بازی‌های دو یا سه بعدی را بسازد. مهم‌ترین برگ برنده‌ای که Godot را از سایرین متمایز کرده رایگان بودن این ابزار آن هم بدون هر گونه حق امتیاز است. در وهله اول باید به زبان اختصاصی این موتور یعنی GDScript اشاره کرد که ساختار مشابه پایتون دارد و به همین خاطر هم یادگیری آن به نسبت راحت‌تر و کم دردسر تر است. صدالبته، از زبان‌های C# ،VisualScript و حتی C++ هم برای توسعه پشتیبانی می‌کند. درباره ابزارهای داخلی و پیشرفته این موتور خوشبختانه شاهد یک آزادی عمل بالا و انعطاف قابل توجهی هستیم. به عنوان مثال شما می‌توانید فیزیک‌های سه بعدی پیشرفته را طراحی نمایید یا این که به لطف Shading پیشرفته این موتور بازتاب نور، سایه‌ها و جلوه‌های بصری واقع‌گرایانه را در بازی به تصویر بکشید. به خاطر چنین امکاناتی هم موتور Godot این روزها برای بسیاری از بازی‌های مستقل و حتی بزرگ هم مورد استفاده قرار می‌گیرد. از طرفی خروجی گسترده‌ای از بازی‌ها بر روی PC، موبایل، وب و کنسول‌ها ارائه می‌دهد. یکی از بهترین بازی‌های ساخته شده با این موتور عنوان Cruelty Squad در سبک FPS است که به طراحی خلاقانه، گرافیک خاص و گیم پلی عمیقش شناخته می‌شود.

  • Unity

Unity را هرگز دست کم نگیرید. لااقل بازی‌های مستقل شاهکاری که چند وقت اخیر عرضه شده‌اند خود گواهی بر این ادعا هستند. به صورت کلی یونیتی از آن دست موتورهای منعطف و با آزادی عمل بالاست که اتفاقاً به لطف جامعه کاربری گسترده‌ای که دارد این روزها یکی از محبوب‌ترین ابزارهای بازیسازی به شمار می‌رود. به لطف همین جامعه کاربردی گسترده هم بیشترین آموزش‌های رایگان در وب سایت‌ها، آکادمی‌ها و حتی یوتیوب متعلق به همین موتور است. همانطور که احتمالاً می‌دانید یونیتی برای ساخت بازی‌های دو بعدی، سه بعدی و واقعیت مجازی به کار برده می‌شود و از زبان برنامه‌نویسی C# بهره می‌برد. همچنین دارای ابزارهای قدرتمندی مانند Asset Store برای دسترسی پیشرفته‌تر به مدل‌ها و انیمیشن‌های آماده و سیستم هوش مصنوعی برای کنترل دشمنان و کاراکترها است. حتی می تواند به لطف قابلیت Render Pipelines، جلوه‌های بصری را چند پله ارتقا داده و تجربه سینماتیک قابل قبولی ایجاد کند. از همه مهم‌تر بیشترین گستردگی خروجی برای پلتفرم‌های مقصد را هم در میان موتور بازی‌های‌سازی به خودش اختصاص داده است. اگر می‌خواهید معجزه این موتور را با اعماق وجودتان حس کنید، تجربه بازی Ori and the Will of the Wisps را به شما توصیه می‌کنیم. عنوانی که بدون شک یکی از بهترین عناوین دو بعدی چند سال اخیر صنعت گیم به شمار می‌رود و چه از نظر فنی  و بصری و چه گیم پلی یکی از بهترین نمونه‌های حال حاضر صنعت گیم به شمار می‌رود.

  • Unreal Engine

همه‌ی ما Unreal Engine را به واسطه گرافیک‌های واقع گرایانه‌اش می‌شناسیم. اصلاً خیلی وقت‌ها به همین واسطه گمان می‌کنیم که بازی‌های مستقل باید راه‌شان را از این موتور سنگین جدا کنند. تصور غلطی که در نهایت دودش به چشم بازیسازان مستقلی می‌رود که به خاطر همین طرز تفکر یکی از بی‌نظیرترین و کامل‌ترین موتورهای بازیسازی را از خودشان دریغ کرده اند. اگر از بحث توانایی‌های فنی و ویژگی‌های بی‌بدیلی مثل Real-Time Rendering فاکتور بگیریم، این موتور از زبان برنامه نویسی C++ برای توسعه پیشرفته پشتیبانی می‌کند. با این وجود برای افراد مبتدی سیستم Blueprints Visual Scripting را هم در خود جای داده است تا بدون نیاز به نوشتن کد، بازی‌های پیچیده خودشان را بسازند. از طرف دیگر بیشترین پشتیبانی از پلتفرم‌های مختلف را هم به خودش اختصاص داده است و می‌تواند خروجی تمام بازی‌ها را برای گوشی‌های هوشمند، Xbox، PlayStation، Nintendo Switch و PC بدون کوچک‌ترین ایراد فنی فراهم کند. اما شاید برجسته‌ترین نکته قوت این موتور مربوط به بازار شلوغ و گسترده‌اش است که در آن هزاران مدل، انیمیشن، افکت صوتی و ابزار آماده برای استفاده در پروژه‌ها ارائه می‌شود.

جمع بندی

کف‌گیر صنعت گیم این روزها به ته دیگ خورده است. بسیاری از بازیسازان بزرگ و ناشرین صاحب‌ نام حالا حتی از پس تامین بودجه بازی‌های بزرگ‌شان هم بر نمی‌آیند. یا اگر هم بربیایند، فروش بازی به قدری نیست که دخل و خرج‌شان به هم بخورد. در عوض تا دل‌تان بخواهد بازی‌های مستقلی داریم که با کمترین هزینه، بیشترین سود و بازدهی را داشته‌اند. جامعه گیمرها هم دیگر با گذشته قابل مقایسه نیستند و بهای بیشتری به بازی‌های کوچک‌تر می‌دهند. تمام این موارد را گفتیم تا به اهمیت بازی‌های مستقل و ساده‌ای که غالباً با همین ابزارهای ذکر شده در متن ساخته می‌شوند، اشاره کنیم. ابزارهایی که هم افراد حرفه‌ای و هم بازیسازان مبتدی می‌توانند با آن مراتب ترقی را با پله برقی طی کنند و به امیال و آرزوهای‌ جاه‌طلبانه‌ی‌شان برسند.

حسین رضایی

حسین رضایی، نویسنده، روزنامه نگار و منتقد بازی های ویدئویی و حوزه تکنولوژی.

دیدگاهتان را بنویسید

دکمه بازگشت به بالا