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

1606683296_1_0.gif

بازی‌سازی و کسب درآمد

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

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

چه برنامه‌هایی برای ساخت یک بازی ویدیویی بهترین هستند؟

خوشبختانه در این زمینه انتخاب‌های زیادی وجود دارد، هرچند بیشتر توسعه‌دهندگان به سراغ  Unity 3D برای ساخت بازی‌های سه بعدی و GameMaker Studio  برای ساخت بازی‌های دو بعدی می‌روند. هر دو نسخه به شکل رایگان در دسترس هستند و امکان یادگیری آن‌ها از طریق مستندات آنلاین یا کتاب‌هایی که منتشر شده وجود دارد. هر دو برنامه به شما اجازه می‌دهند پلتفرمی که قصد ساخت بازی برای آن‌را دارید انتخاب کنید. بنابراین مشکل خاصی در ارتباط با بازی‌سازی برای کامپیوترهای خانگی یا کنسول وجود ندارد. البته با توجه به محدودیت‌های فنی زیادی که برای توسعه‌دهندگان ایرانی وجود دارد، پیشنهاد می‌کنم به سراغ ساخت بازی برای کنسول‌ها نروید، زیرا باید در زمینه اشکال‌زدایی بازی برای کنسول تجربه زیادی داشته باشید و علاوه بر این باید کیت توسعه‌دهنده و مجوزهای گران‌قیمتی را خریداری کنید.

GameMaker: Studio

 بازی‌های معروفی و شناخته شده‌ای مثل Downwell، Crashlands ،Hotline Miami، Nuclear Throne، Nidhogg  و Spelunky  توسط این موتور بازی ساخته شده‌اند. GameMaker Studio در زمینه ساخت بازی‌های دو بعدی بهترین عملکرد را دارد، زیرا برای ساخت بازی‌ها مجهز به یک زبان برنامه‌نویسی اختصاصی است. ترکیب نحوی این زبان برنامه‌نویسی به اندازه‌ای ساده است که برنامه‌نویسان حرفه‌ای آن‌را یک زبان برنامه‌نویسی واقعی نمی‌دانند، اما یادگیری آن ساده است و قابلیت‌های کارآمدی در اختیار برنامه‌نویسان قرار می‌دهد. تنها با نوشتن چند دستور ساده، بلوک‌ها به حرکت می‌آیند و قادر به تیراندازی به دشمنان هستید. موتور Game Maker می‌تواند نقطه شروع خوبی برای کدنویسی باشد، هرچند امکان به‌کارگیری مستقیم کدهای آن در زبان‌های برنامه‌نویسی دیگر وجود ندارد، اما مفهوم و ساختار کدنویسی را به خوبی آموزش می‌دهد. در Game Maker یک قابلیت برنامه‌نویسی جالب به‌نام آیکن‌ها را با موس انتخاب کن، بردار و بعد جایی دیگر قرار بده وجود دارد که سرعت انجام کارها را بیشتر می‌کند. قابلیت فوق برای افرادی در نظر گرفته شده که تمایلی به کدنویسی ندارند، اما پیشنهاد می‌کنیم به جای این‌کار گزینه کدنویسی را انتخاب کنید.Game Maker  را باید بهترین گزینه برای افرادی توصیف کرد که دوست دارند به تنهایی کار کنند. Game Maker را می‌توان در زمینه بازی‌سازی سه بعدی به کار گرفت، اما قابلیت‌های کاربردی قدرتمندی ارائه نمی‌کند، زیرا تمرکز اصلی آن در زمینه ساخت بازی‌های دو بعدی است. البته تیم سازنده اعلام کرده که امکانات قدرتمندی در زمینه ساخت بازی‌های سه بعدی در نظر گرفته که در آینده در اختیار توسعه‌دهندگان قرار خواهد گرفت.

Unity

یکی از قدرتمندترین موتورهای بازی‌سازی سه بعدی در جهان یونیتی است که عنوان‌های معروفی مثل: Ori and the Blind Forest، Inside ،Yooka-Laylee، Layers of Fear، Super Mario Run، Firewatch  و Pokémon Go با استفاده از آن ساخته شده‌اند. در گذشته موتور بازی‌سازی یونیتی به شکل تجاری در دسترس توسعه‌دهندگان قرار داشت و نسخه رایگان آن با قابلیت‌های محدودی عرضه می‌شد، اما چند سالی است که یونیتی به شکل رایگان در اختیار توسعه‌دهندگان قرار دارد. جالب آن‌که شرکت‌های بزرگی چون یوبی سافت و نینتندو برای ساخت بازی از آن استفاده می‌کنند. یونیتی در هر دو زمینه ساخت بازی‌های دو‌بعدی و سه‌بعدی قابلیت‌های خوبی در اختیار توسعه‌دهندگان قرار می‌دهد. بزرگ‌ترین تفاوت Unity با Game Maker در بحث کدنویسی است. به بیان دقیق‌تر در یونیتی مجبور به کدنویسی هستید، البته ابزارهای اولیه‌ای مثل کنترلر شوترهای سه‌بعدی و مدل‌های از پیش آماده شده نیز برای توسعه‌دهندگان آماده شده تا نیازی به کدنویسی نداشته باشند. 

شما می‌توانید عنوانی بسازید که بدون نیاز به یک خط کدنویسی آماده شوند، البته نباید انتظار داشته باشید بازی جالبی ساخته شود. یونیتی یک بازار بسیار گسترده برای خرید مدل‌های از پیش ساخته شده برای توسعه‌دهندگان در نظر گرفته، هرچند بیشتر آن‌ها رایگان است. به بیان دقیق‌تر، بخش کنترل، پویانمایی‌ها و اشیا از بخش بازار در دسترس هستند و بدون پرداخت هزینه‌ای قادر به استفاده از آن‌ها هستید. برای آن‌که بتوانید از یونیتی استفاده کنید باید برنامه‌نویسی را به‌طور جدی یاد بگیرید. خوشبختانه یونیتی از دو زبان سی شارپ و جاوااسکریپت پشتیبانی می‌کند که هر دو از زبان‌های معروف و کاربردی هستند، بنابراین با یادگیری این دو زبان نه تنها قادر به بازی‌سازی هستید، بلکه توانایی ساخت برنامه‌های کاربردی دیگری را نیز دارید. این موتور بازی‌سازی به برنامه‌نویس این امکان را می‌دهد که از ساده‌ترین ویرایشگرهای متنی مثل نوت پد تا محیط‌های حرفه‌ای کدنویسی نظیر Visual studio code و JetBrains Rider و غیره برای ویرایش اسکریپت‌ها استفاده کند. در نسخه‌های جدید یونیتی زبان برنامه نویسی سی شارپ به عنوان زبان اصلی توسعه در این محیط استفاده می‌شود. در گذشته یونیتی از زبان برنامه‌نویسی Boo پشتیبانی می‌کرد که در نسخه 5 آن‌را حذف کرد. یونیتی یک موتور بازی‌ساز چند سکویی است که می‌تواند برای بسیاری از پلتفرم‌های موجود خروجی تهیه کند. گرفتن خروجی اندروید از این نرم‌افزار سخت است، با این حال امروزه تنها حدود ۵ درصد کاربران بازی‌ها را روی کامپیوترهای شخصی اجرا می‌کنند و سهم بسیاری به کنسول‌های بازی و موبایل و وب می‌رسد. یونیتی برای پلتفرم‌های مطرحی مثل ایکس‌باکس ۳۶۰، پلی‌استیشن ۳، آی‌اواس، وب (HTML5)، اکس‌باکس وان، پلی‌استیشن ۴، پلی‌استیشن ۵، آتاری وی‌سی‌اس، مایکروسافت ویندوز، اندروید، مک اواس و تایزن خروجی ارائه می‌کند. تقریبا می‌توان گفت که یونیتی برای تمامی پلتفرم‌های موجود خروجی بازی تولید می‌کند. این قابلیت از لحاظ تجاری بسیار مهم است، به خصوص اجرای بازی روی وب و به صورت چند کاربره که باعث جذب کاربران بسیار می‌شود. تعدادی از بازی‌های موجود در شبکه اجتماعی فیس‌بوک توسط موتور بازی‌ساز یونیتی ایجاد شده‌است. البته برای آن‌که بتوانید از یونیتی استفاده کنید به مهارت‌های زیادی برای ساخت پروژه نیاز دارید. به بیان دقیق‌تر باید تیمی متشکل از متخصصان پویانمایی، مدل‌سازی، برنامه‌نویسی، داستان‌نویسی و کنترل کیفیت گردهم آیند تا یک بازی جذاب ساخته شود. بر همین اساس یونیتی انتخاب خوبی برای بازی‌سازی تک‌نفره نیست. پس از آن‌که نوع بازی و ابزار موردنظر را انتخاب کردید، باید به سراغ یادگیری بازی‌سازی بروید. بهتر است کار را با بازی‌های کوچک آغاز کنید. شاید دوست دارید تا بازی‌هایی مثل Call of Battleshock  را طراحی و پرفروش‌ترین بازی جهان را بسازید، اما نیمی از افراد در این مسیر با شکست روبرو می‌شوند، زیرا در همان ابتدای راه سنگ بزرگی را برداشته‌اند. بهتر است کار را با پروژه کوچکی آغاز کنید تا امکان کامل کردن آن وجود داشته باشد. هرچه پروژه‌های کوچک بیشتری را کامل کنید تجربه بیشتری به دست می‌آورید. با وجود انجمن‌های بازی‌سازی و منابع غنی در اینترنت، یادگیری مفاهیم اولیه بازی‌سازی کار سختی نیست. 

چگونه از موتور GameMaker Studio برای بازی‌سازی استفاده کنیم؟

YoYo Games خالق موتور بازی‌سازی GameMaker آموزش‌های کاربردی زیادی برای افراد مبتدی آماده کرده است. علاوه بر این، سایت‌های HeartBeast و RealTutsGML نیز سلسله مباحث آموزشی خوبی برای علاقه‌مندان در نظر گرفته‌اند. تام فرانسیس (Tom Francis)، فیلمانه‌نویس بازی‌ها که بعد‌ها به دنیای کدنویسی بازی‌ها وارد شد، آموزش‌های جالبی در ارتباط با ساخت بازی، بدون هیچ‌گونه تجربه‌ای برای علاقه‌مندان آماده کرده است. کافی است نام او را گوگل کنید تا به مباحث آموزشی که آماده کرده دست پیدا کنید. انجمن GameMaker نیز حاوی پرسش‌ و پاسخ‌های زیادی در همین ارتباط است. 

چگونه کار با Unity را آغاز کنیم؟

سایت یونیتی یک منبع آموزشی ویژه برای افراد در نظر گرفته که البته برای یادگیری مباحث آن به پیش‌زمینه خوبی در ارتباط با مباحث فنی و به ویژه برنامه‌نویسی نیاز دارید. بر همین اساس یادگیری مباحث آن کمی سخت است. بخش آموزشی «بازی حرکت کردن توپ» می‌تواند شروع خوبی باشد. علاوه بر این، جیمی وگاس (Jimmy Vegas) ویدیوهای آموزشی خوبی برای مبتدیان در نظر گرفته است. یونیتی نیز انجمن برای توسعه‌دهندگان برای برطرف کردن مشکلات در نظر گرفته است. 

منابع اولیه موردنیاز

فروشگاه GameMaker به نشانی https://marketplace.yoyogames.com/  دسترسی به طیف گسترده‌ای از اشیا و ابزارهای کمکی برای ساخت بازی‌ها همچون شخصیت‌های موردنیاز در بازی‌های دو بعدی را فراهم می‌کند. موتورهای مخصوص نورپردازی و سایه‌پردازی، پس‌زمینه‌های گرافیکی و حتی بازی‌های کامل که نکات ارزشمندی در اختیارتان قرار می‌دهند از طریق فروشگاه در دسترس است. Unity Assets Store به نشانی https://www.assetstore.unity3d.com/en/#!/  فروشگاهی در اختیار بازی‌سازان قرار می‌دهد که شامل ملزومات موردنیاز برای ساخت بازی‌ها مثل مدل‌ها، پویانمایی‌ها، موتورهای بازی‌سازی از پیش ساخته شده برای بازی‌های اول شخص یا دو بعدی، و بافت‌ها است. خوشبختانه بیشتر آن‌ها رایگان هستند و نیازی به پرداخت پول برای استفاده از آن‌ها نیست. 

پویانمایی

  • GraphicsGale به نشانی https://graphicsgale.com/us/  مجموعه‌ای بزرگ و رایگان از ابزارهای موردنیاز برای ساخت پویانمایی‌های پیکسلی در بازی‌های دوبعدی را ارائه می‌کند. 
  • Piskel به نشانی http://www.piskelapp.com/p/agxzfnBpc2tlbC1hcHByEwsSBlBpc2tlbBiAgICThbCVCgw/edit یک برنامه انیمیشن تحت وب است که برای ساخت بازی‌های دوبعدی استفاده می‌شود. 
  • Blender به نشانی https://www.blender.org/ یک برنامه مدل‌سازی و پویانمایی سه بعدی رایگان است که استانداردهای صنعت بازی‌سازی را ارائه می‌کند. البته برای آن‌که بتوانید از مزایای Blender استفاده کنید باید مدت زمانی را صرف یادگیری آن کنید. 
  • Daz Studio به نشانی https://www.gamesradar.com/how-to-make-a-videogame-with-no-experience/2/   یک برنامه رایگان مدل‌سازی و پویانمایی دیگر است که برای افراد حرفه‌ای طراحی شده است. 
  • Animation HD به نشانی https://itunes.apple.com/gb/app/animation-creator-hd/ برای افرادی که آ‌ی‌پاد و قلم مخصوص آی‌پاد دارند طراحی شده تا نقاشی‌های خود را به بازی‌ها اضافه کنند. به بیان دقیق‌تر ابزار فوق برای طراحان و مدل‌سازان بازی‌ها طراحی شده است. 

ابزارهای مخصوص صداگذاری

یکی از جنبه‌های مهم و تاثیرگذار بازی‌ها صداها و افکت‌های صوتی است. برای این منظور ابزارهای زیر در دسترس تیم‌های توسعه‌‌دهنده بازی قرار دارد. 

Audacity به نشانی http://www.audacityteam.org/ انتخاب مناسبی برای ویرایش صدا و موسیقی است. شما می‌توانید جلو‌های ویژه صوتی موردنظر خود را ویرایش یا تغییراتی در آن‌ها اضافه کرده یا لایه‌های مختلفی از صدا به آن اضافه کنید.

Freesound و FreeSFX به نشانی https://freesound.org/browse/tags/sound-effects/ و http://www.freesfx.co.uk/ منابع خوبی برای ساخت افکت‌های صوتی حرفه‌ای (از تیراندازی گرفته تا صدای پا) هستند.

موتور Unreal

Unreal یک موتور بازی‌ساز چند‌سکویی است که توسط شرکت Epic Games توسعه پیدا کرده است. از موتور مذکور برای ساخت عناوین بزرگی مثل Final Fantasy VII Remake، Fortnite، Octopath و نمونه‌های مشابه استفاده شده است. Unreal از زبان‌های برنامه‌نویسی سی‌پلاس‌پلاس و Blueprint Visual Scripting پشتیبانی می‌کند و به شکل رایگان در دسترس است. البته اگر بازی به درآمدی بیش از سه هزار دلار دست پیدا کند باید 5 درصد درآمد بازی هر سه ماه یکبار به شرکت سازنده پرداخت شود. 

موتور Twine

موتور مذکور برای ساخت بازی‌های متن‌باز طراحی شده است. از بازی‌های معروف ساخته شده توسط این موتور باید به Lionkiller و The Uncle Who برای نینتندو اشاره کرد. موتور مذکور بیشتر برای ساخت بازی‌های تعاملی و متنی برای پلتفرم‌های ویندوز، مک و وب استفاده می‌شود. توسعه‌دهندگان آشنا به زبان‌های جاوااسکریپت، HTML، CSS و Proprietary markup language بدون مشکل قادر به استفاده از موتور فوق هستند. Twine به شکل رایگان در اختیار توسعه‌دهندگان قرار دارد. 

موتور RPG Maker

این موتور بازی‌ساز برای ساخت بازی‌های سبک PRG استفاده می‌شود و توسط موسسه Degica پشتیبانی می‌شود. از بازی‌های مهم ساخته شده توسط این موتور جست‌وجو باید به Corpse Party و Rakuen اشاره کرد. RPG Maker برای ساخت بازی‌های دوبعدی برای پلتفرم‌های ویندوز و مک‌اوس استفاده می‌شود. توسعه‌دهندگان آشنا به زبان جاوااسکریپت بدون مشکل قادر به استفاده از موتور مذکور هستند. 

موتور Lumberyard

موتور مذکور چندسکویی است و برای ساخت بازی‌های سه‌بعدی استفاده می‌شود. Lumberyard توسط آمازون توسعه داده شده و پشتیبانی می‌شود و برای ساخت بازی‌هایی مثل Star Citizen و The Grand Tour Game به کار گرفته شده است. برای آن‌که بتوانید از موتور فوق که تنها روی سیستم‌عامل ویندوز در دسترس است استفاده کنید باید با زبان برنامه‌نویسی Lua آشنا باشید. 

موتور Godot

موتور Godot برای ساخت بازی‌های دو بعدی و سه بعدی استفاده می‌شود و بیشتر توسط تیم‌های توسعه‌دهنده بازی استفاده می‌شود. Godot یک موتور چندسکویی است که روی سیستم‌عامل‌های ویندوز، لینوکس و مک‌اوس در دسترس توسعه‌دهندگان قرار دارد. اگر علاقه‌مند به ساخت بازی با این موتور بازی‌ساز هستید باید به زبان‌های سی، Visual Scripting و GDScript آشنا باشید. از مزایای شاخص موتور مذکور می‌توان به پشتیبانی از واقعیت مجازی، ساخت اسکلت شخصیت‌ها در بازی‌های دو بعدی و یک ویرایشگر کاملا تعاملی اشاره کرد. 

CryEngine

کرای اینجین (CryEngine) یک موتور بازی‌سازی است که توسط توسعه‌دهنده بازی آلمانی کرای تک طراحی شده‌است. موتور مذکور برای ساخت بازی‌های شخص ثالث مثل Sniper: Ghost Warrior 2 و SNOW استفاده شده‌ است. Warhorse Studios از نسخه اصلاح شده موتور مذکور برای ساخت RPG Kingdom Come: Deliverance استفاده کرده است. در ۲۲ مارس ۲۰۱۶، Crytek نسخه جدیدی از CryEngine را با نام CryEngine V منتشر کرد. در تاریخ ۲۱ سپتامبر ۲۰۱۷، CryEngine 5.4 منتشر شد که رندر API Vulkan، ادغام مواد و سایر ویژگی‌ها از جمله الگوهای جدید سی‌شارپ و قابلیت‌های جدید به آن اضافه شدند. در نهایت آمازون موتور مذکور را خریداری کرد و آن‌را Amazon Lumberyard نامید. 

JMonkeyEngine

موتور جی‌مانکی (JMonkeyEngine)، یک موتور بازی‌ساز سه‌بعدی است. jME به‌طور کامل به زبان جاوا نوشته شده ‌است. jME با استفاده از کتابخانه LWJGL از قابلیت‌های کتابخانه‌های اوپن‌جی‌ال (برای مدیریت گرافیک)، اوپن‌اِی‌اِل (برای مدیریت صدا) و اوپن‌سی‌ال (برای پردازش به وسیله کارت گرافیک)  روی سیستم‌عامل‌های گوناگون بهره می‌برد. با استفاده از این موتور بازی‌سازی می‌توان بدون تغییر در کد بازی، بازی را روی سیستم‌عامل‌های مختلف (مانند ویندوز، اواس ده، گنو/لینوکس و اندروید) اجرا کرد. jME یک موتور بازی‌سازی متن‌باز است که تحت پروانه بی‌اس‌دی منتشر می‌شود. jME توسط یک گروه کوچک از برنامه‌نویسان با همکاری یک جامعه کاربری تحت شبکه توسعه داده می‌شود. jME از نسخه ۳ به بعد به همراه یک کیت توسعه نرم‌افزار (SDK) بر مبنای نت‌بینز عرضه می‌شود که بازی‌سازی با آن را ساده‌تر می‌کند.

Pygame

پای‌گیم (Pygame) مجموعه‌ای چندسکویی از ابزارهای قابل استفاده در پایتون برای ساخت بازی‌های ویدیویی است. این مجموعه شامل کتابخانه‌هایی است که برای کار با صدا و گرافیک در پایتون استفاده می‌شوند. 

Anvil

انویل (Anvil) یک موتور بازی‌ساز است که توسط شرکت یوبی‌سافت برای اجرا در ویندوز، ایکس‌باکس ۳۶۰ و پلی‌استیشن ۳ طراحی شده است.

X-Ray Engine

ایکس-ری انجین (X-Ray Engine) موتور بازی‌سازی است که توسط کمپانی جی‌اس‌سی‌ گیم‌ورلد توسعه داده شد و در بازی‌هایی مثل استالکر استفاده شده است

ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را می‌توانید از کتابخانه‌های عمومی سراسر کشور و نیز از دکه‌های روزنامه‌فروشی تهیه نمائید.

ثبت اشتراک نسخه کاغذی ماهنامه شبکه     
ثبت اشتراک نسخه آنلاین

 

کتاب الکترونیک +Network راهنمای شبکه‌ها

  • برای دانلود تنها کتاب کامل ترجمه فارسی +Network  اینجا  کلیک کنید.

کتاب الکترونیک دوره مقدماتی آموزش پایتون

  • اگر قصد یادگیری برنامه‌نویسی را دارید ولی هیچ پیش‌زمینه‌ای ندارید اینجا کلیک کنید.

ایسوس

نظر شما چیست؟