این مقاله، راهنمای ورود به بازیسازی است. اینجا در مورد پیشنیازهای ورود به این صنعت صحبت خواهیم کرد.
مدت زیادی بود که قصد داشتم چنین مقالهای بنویسم؛ مقالهای که بتوانیم با هم در مورد بازیسازی حرف بزنیم. اینکه چرا صنعت بازیسازی در ایران، با وجود شروع خوبی که چندین سال پیش داشت به یکباره متوقف شد، بسیار ناراحتکننده بود. البته خوشبختانه در طی این سالها نیز کسانی بودهاند که در کشورمان با وجود محدودیتهای بیشمار دست از آرزوی خود برنداشتند و توانستند بازیهای قابل توجهی تولید کنند. با این وجود، با در نظر گرفتن تعداد علاقهمندان حوزهی بازی در کشورمان و رشد روزافزون صنعت بازیسازی در جهان، واقعاً حیف است که ایدههای این افراد قبل از رسیدن به مرحلهی اجرا، در گوشهای دفن شوند.
بسیاری از شمایی که مخاطب وبسایت گیمفا هستید، به تازگی میخواهید وارد دانشگاه شوید یا سالهای اولیه دانشگاه خود را طی میکنید. تعداد دیگری از شما هماکنون در حوزهی طراحی بازیهای ویدیویی یا رشتهای مرتبط، مانند برنامهنویسی فعالیت دارید. بسیار دیگری از شما نیز گیمرهای حرفهای هستید که بازی، بخشی جدایی ناپذیر از زندگی شماست و به راحتی میتوانید در مورد بازیها حرف بزنید و ایدهپردازی کنید. به نظر من این دقیقاً همان جامعهای است که میتواند آیندهای امیدبخش برای صنعت بازیسازی رقم بزند؛ افرادی خوشفکر که میتوانند تیم تشکیل دهند یا به شکل انفرادی روی ایدههای خود کار کنند.
هدف از این مقاله، آموزش فلان موتور بازیسازی و کار کردن با ابزار آن نیست. این آموزشها توسط افرادی که چندین سال است در حوزهی بازیسازی فعالیت میکنند و کوچکترین جزئیات نرمافزار را میدانند در اینترنت وجود دارد. اینجا میخواهیم در مورد نقشهی راه با هم صحبت کنیم. چیزی که خیلیها را از ورود به بازیسازی بازمیدارد، وسعت این دنیاست. اینکه نمیدانند دقیقاً از کدام نقطه باید شروع کنند و چه چیزهایی برای شروع لازم دارند.
این را هم در نظر بگیرید که ورود به بازیسازی هزاران راه دارد، بنابراین شاید با برخی از بخشهای این مقاله موافق نباشید یا راه بهتری در ذهنتان باشد که در این صورت خوشحال میشوم در بخش نظرات آنها را با همه به اشتراک بگذارید. هدف این مقاله روشن کردن راه برای افراد مبتدی است و تنها در صورتی میتوان بهترین راهنما را ارائه داد که همهمان چیزهایی که میدانیم را به میدان بیاوریم. من نیز به عنوان کسی که تجربهی اندکی در این زمینه دارم و با بسیاری از افراد فعال در این حوزه مکالمههایی داشتهام، تلاشم را خواهم کرد تا هرآنچه که میدانم را با شما به اشتراک بگذارم.
من میخواهم بازی بسازم!
تبریک میگویم! اولین قدم برای انجام هر کاری این است که واقعاً تصمیم بگیرید آن را انجام دهید. بسیاری از افراد رویای ساخت بازی دارند، اما به دلیل اینکه فکر میکنند این کار بسیار پیچیده است، هیچگاه سمت آن نمیروند. البته درست است که این کار پیچیدگیهای خاص خودش را دارد، اما میتوان از آن به عنوان یکی از لذتبخشترین کارهای جهان نیز نام برد. اینکه شما بتوانید ایدهی خود را پیاده کنید و آن را در اختیار بقیه بگذارید تا تجربه کنند، حسی فوقالعاده است.
اما قبل از هر چیزی باید یک سری نکات را بدانید. ساخت بازی به این معنا نیست که شما باید در آنِ واحد یک برنامهنویس حرفهای، یک گرافیست ماهر، یک انیماتور زبردست یا یک موزیسین کاربلد باشید. قطعاً تسلط بر هر یک از این زمینهها باعث خواهد شد کارها سریعتر پیش بروند، اما چیزی که باید بدانید این است که بازیسازی قبل از هر چیزی به این معناست که شما ایدهای که در ذهن پروراندهاید را اجرا کنید. این روزها ابزاری وجود دارند که به شما کمک میکنند بدون نوشتن حتی یک خط کد بتوانید یک بازی بسازید. با پیشرفت هوش مصنوعی، احتمالاً در چند سال آینده ساخت یک بازی آسانتر هم خواهد شد.
البته این را هم فراموش نکنید که باید واقعگرایانه به موضوع نگاه کرد. احتمال آنکه شما به تنهایی بتوانید یک بازی AAA تولید کنید تقریباً صفر است. کمپانیهایی مانند Rockstar و Ubisoft از پیشقراولان صنعت بازیسازی هستند که هر سال بهترین نیروهای موجود در بازار را استخدام میکنند و طی پروژههای چندین ساله و به شکل تیمی، یک محصول AAA تولید میکنند. اینکه شما بیایید و به تنهایی، بدون دسترسی به ابزار روز جهان و با بودجهی بسیار محدود، یک بازی در حد GTA یا Assassin’s Creed بسازید، طبیعتاً واقعگرایانه نیست! اما آیا این به این معناست که باید دور بازیسازی را خط بکشید؟ البته که خیر!
هر صنعت موفقی را که در نظر بگیرید، پیشقراولانی دارد که اکنون به عنوان غولهای آن صنعت از آنها یاد میشود. شما میخواهید یک فروشگاه آنلاین داشته باشید؛ آیا باید این فروشگاه حتماً در سطح آمازون باشد که به آن بگوییم یک فروشگاه موفق؟ البته که نه! گاهی اوقات یک تیم چندنفره دست به دست هم میدهند و شاهکارهایی مانند Limbo و یا Disco Elysium را تولید میکنند. حتی یک بازی کارتی مانند Balatro میتواند به عنوان کاندیدای بهترین بازی سال ۲۰۲۴ معرفی شود و میلیونها نسخه بفروشد، چرا؟ چون جذاب است!
اولین چیزی که باید به خاطر داشته باشید این است که کمالگرایی را کنار بگذارید و واقعگرا باشید. این بدین معنا نیست که بیخیالِ رسیدن به قلهها شوید. اگر آرزویتان این است که روزی در یک کمپانی بزرگ فعالیت کنید، کاملاً راهتان باز است! ایرانیهای بسیاری هماکنون در کمپانیهایی مانند Blizzard و Naughty Dog کار میکنند و این یعنی رسیدن به این رویا نیز به هیچوجه دور از دسترس نیست. اما به عنوان یک مبتدی، نگذارید تصورات اشتباه و کمالگرایی شما را از ورود به این عرصه باز دارند.
هر چیز ارزشمندی در جهان، زمان میبرد!
ساخت بازی کار راحتی نیست. در این مسیر چیزهای زیادی است که باید یاد بگیرید که در ادامه به آنها اشاره خواهیم کرد. اما آیا چیز ارزشمندی در دنیا وجود دارد که به راحتی به دست بیاید؟ آیا میتوان انتظار داشت با حداقل تلاش و یا حداقل دانش به چیزی رسید که بقیه سالیان سال است با تمام تمرکز بر روی آن کار میکنند؟ قطعاً نه! اما این را بدانید که موفقیت متعلق به کسانی است که آن را میخواهند و به دنبال آن هستند!
علاوه بر این، این روزها مسیر برای بازیسازان جوان بسیار هموارتر شده است. از آموزشهای کامل در یوتیوب گرفته که شما را قدم به قدم هدایت میکنند تا یک بازی بسازید، تا کورسهای پیشرفته که صفر تا صد کار با Unreal Engine یا Unity را به شما یاد میدهند، همگی ابزارهای کمکی هستند که شاید چند سال پیش دسترسی به آنها به این اندازه آسان نبود. در زمان فعلی، دیگر نیازی ندارید که کتابهای چند صد صفحهای را به پایان برسانید که فقط ۲۰ درصد آن اطلاعات مفید است و بقیهاش تکرار مکررات! لزومی هم ندارد که چرخ را از ابتدا اختراع کنید و با آزمون و خطا به کسب تجربه بپردازید؛ چرا که با یک جستجوی ساده یا سوال کردن از Chat GPT و ابزار مشابه، احتمالاً به جواب سوال خود خواهید رسید. اگر هیچ یک از اینها پاسخگوی نیاز شما نبودند، میتوانید از طریق ایمیل با متخصصان این زمینه در ارتباط باشید.
راههای بیشماری برای سرعت بخشیدن به پروسهی یادگیری و پیشرفت شما وجود دارد و جامعهی گیمینگ، بیش از هر زمان دیگری پشت شماست! اگر علاقه دارید به این صنعت وارد شوید، اکنون یکی از طلاییترین برهههای زمان است!
خب، از کجا شروع کنم؟!
بعد از اینکه تصورات اشتباه را از خود دور کردید، حالا وقت آن است که سریعترین و امتحانشدهترین راههای ورود به این حوزه را با هم بررسی کنیم. آیا باید اول کدنویسی یاد بگیرید؟ آیا باید با بازیهای دو بعدی شروع کنیم و بعد به سمت بازیهای سه بعدی برویم؟ آیا قبل از هر چیزی باید گرافیک و طراحی کاراکتر یاد بگیریم؟ بهترین مسیر چیست؟
در این بخش بهترین مسیری که از نظر بسیاری از کارشناسان میتوانید پیش بگیرید را با هم بررسی میکنیم.
موتور بازیسازی موردنظر خود را انتخاب کنید.
قبل از هر چیزی اگر نمیدانید موتور بازیسازی چیست و از چه بخشهایی تشکیل شده، از شما دعوت میکنم این مقاله را مطالعه کنید. در مقالهی مذکور توضیحی مقدماتی در مورد اینکه موتور بازیسازی چیست و چطور کار میکند برایتان نوشتهام. اگر سوالات بیشتری داشتید میتوانید آن را در بخش نظرات مطرح کنید تا بیشتر در مورد آن با هم صحبت کنیم.
اما از چیستی و چگونگی موتور بازیسازی که بگذریم، باید بگوییم مطمئنترین روش برای یادگیری یک حرفهی جدید، شیرجه زدن در آن حرفه است! اینکه بیایید ابتدا یک زبان برنامهنویسی سنگین و نسبتاً دشوار مانند #C یاد بگیرید، بعد پشیمان شوید و ببینید اصلاً این چیزی نبود که شما از بازیسازی میخواستید، بسیار زمانبر و فرسایشی خواهد بود. البته که نهایتاً به کدنویسی احتیاج پیدا خواهید کرد، اما باید ابتدا ببینید کدنویسی اصلاً کجا و به چه میزان به شما کمک خواهد کرد! همهی ما چندین سال در دبیرستان مشتق و انتگرال خواندهایم و فقط تعدادی از ما میدانیم که این چیزها کجا به درد میخورند، چون اکثرمان آنها را در دنیای واقعی به کار نبردهایم!
بنابراین پیشنهاد من برای شما این است: ابتدا با یک موتور ساده که نیازی به کدنویسی ندارد شروع کنید و ببینید بازیسازی در عمل برای شما تا چه حد جذابیت دارد. GameMaker Studio 2 و RPG Maker دو نمونه از این موتورها هستند که به شما کمک میکنند بازیهای دوبعدی و کوچک بسازید. علاوه بر اینها Construct 3 و Gdevelop نیز وجود دارند که بازیهای مینیمال و زیبایی با آنها میتوان ساخت. نکتهی امیدبخش اینجاست که این موتورها رایگاناند و میتوانید مستقیماً و بدون واسطه از آنها استفاده کنید. جالب اینجاست که بدانید برخی از بازیسازان خوشذوق توانستهاند بازیهایی با این موتورها تولید کنند که در فروشگاههای آنلاین دانلود میلیونی دارند!
برای اینکه خودتان قدرت این موتورها را ببینید، پیشنهاد میکنم به اینجا و اینجا مراجعه کنید. توسعهدهندگان این موتورها، خودشان از بازیهای خوب ساخته شده با موتورشان تجلیل کرده و آنها را در معرض نمایش عمومی قرار میدهند. شاید شما هم بدون اینکه اطلاع داشته باشید مخاطب عناوینی بودهاید که بدون کُد توسعه داده شدهاند و خیلی هم از آنها لذت بردهاید. همانطور که در ابتدای مقاله گفتم، بازیسازی در وهلهی اول یعنی پیاده کردن ایدههایی که در ذهن پروراندهاید!
حالا اگر با بازیهای دوبعدی حال نمیکنید تکلیف چیست؟ باز هم موتورهایی وجود دارند که میتوانند به شما کمک کنند. بلوپرینتهای Unreal Engine و یا موتورهایی مانند Buildbox وجود دارند که با آنها میتوانید بازیهای سهبعدی بسازید. البته این موضوع کمی پیچیدهتر از مورد بالاست، چرا که حتی بلوپرینتهای یادشده نیز به دانش مختصری از برنامهنویسی نیاز دارند و نباید انتظار داشته باشید که خروجی شما یک شوتر خفن سوم شخص باشد که میلیونی بفروشد! با این حال همانطور که گفتم این ابزار میتوانند دروازهی ورود شما به دنیای بازیسازی باشند. یک بازهی زمانی مشخص برای خود تعیین کنید و روزی چند ساعت با این ابزار وقت بگذرانید. ببینید بهترین چیزی که میتوانید بدون نیاز به مهارتی خاص تولید کنید چیست؟ ببینید کجاها باید تغییر کنند ولی به دلیل دانش محدود شما در حوزهی کدنویسی این تغییرها امکانپذیر نیستند؟ پس از آن، دید بسیار واضحتری در مورد بازیسازی خواهید داشت.
من از کدنویسی نمیترسم!
واقعیت این است که اکثریت قریب به اتفاق بازیهای مطرح جهان، نیاز به کدنویسی دارند. چیزی که در بالا تلاش داشتم بگویم، این بود که نگذارید عدم دانش کافی در مورد کدنویسی یا گرافیک، شما را از ورود به این صنعت باز دارد! اما حالا که تا اینجای مقاله آمدهاید، وقتش است که کمی جدیتر به موضوع نگاه کنیم. سوال این است که اگر واقعاً بخواهید وارد این صنعت شوید، از کجا باید شروع کنید؟
دو موتور نامآشنا که احتمالاً همگی در مورد آنها شنیدهاید، موتورهای Unity و Unreal Engine هستند. آیا ساخت بازی با این موتورها نیازمند کدنویسی است؟ بله. آیا کدنویسی آنقدری که فکر میکنیم سخت و وحشتناک است؟ خیر!
باز هم لازم میدانم یادآور شوم که اکنون در عصری زندگی میکنیم که دیگر نیازی به زیر و رو کردن کتابهای چند صد صفحهای برای حل یک مشکل ساده نیست! انجمنهای بسیاری وجود دارند که پر از افراد باتجربهتر هستند و مشکلی که شاید برای شما بسیار بزرگ به نظر برسد، در این انجمنها به راحتی قابل حل است. علاوه بر این هوش مصنوعی نیز هر روز دارد در این زمینه بهتر میشود و میتوانید ایرادهای خود را با این رباتهای دوستداشتنی در میان بگذارید!
خب، با Unity شروع میکنیم. یادگیری یونیتی برای افراد مبتدی آسانتر است و انعطافپذیری بالایی برای پروژههای مختلف دارد. این موتور برای بازیهای دو بعدی و سه بعدی بهخوبی کار میکند و در بسیاری از بازیهای مستقل استفاده شده است. زبان برنامهنویسی اصلی در یونیتی C# است که نسبت به C++ سادهتر و خواناتر است. این موضوع باعث میشود افراد مبتدی راحتتر بتوانند کدنویسی در یونیتی را یاد بگیرند.
یادگیری یونیتی آسان است و منابع آموزشی گستردهای برای آن وجود دارد. یوتیوب، وبسایتهای آموزشی و دورههای مختلف پروژههای ساده تا پیشرفته را پوشش میدهند. یونیتی از نظر پلتفرمهای مختلف انعطافپذیر است و میتوان با آن برای کامپیوتر، موبایل، کنسولها و حتی واقعیت مجازی بازی ساخت. همچنین این موتور نسبت به آنریل، منابع سیستمی کمتری مصرف میکند، بنابراین روی سیستمهای ضعیفتر هم قابل اجرا است.
با این حال، یونیتی از نظر کیفیت گرافیکی نسبت به آنریل ضعیفتر است و اگر به دنبال ساخت بازیهایی با گرافیک واقعگرایانه هستید، نیاز به تنظیمات بیشتر و استفاده از افزونههای جانبی خواهید داشت. همچنین مدیریت فیزیک و نورپردازی در یونیتی بهاندازه آنریل قدرتمند نیست و برای ساخت بازیهای پیچیدهتر در این زمینه، نیاز به کدنویسی بیشتری وجود دارد. اگر هیچ تجربهای در برنامهنویسی ندارید، یادگیری اصول اولیهی یونیتی حدود یک تا دو ماه زمان میبرد، البته به شرطی که روزانه دو تا سه ساعت تمرین کنید. بعد از آن میتوانید پروژههای کوچک دو بعدی یا سه بعدی بسازید. برای تسلط کامل بر موتور و ساختن یک بازی کامل، شش ماه تا یک سال تمرین و یادگیری مداوم نیاز خواهید داشت.
از سوی دیگر، آنریل انجین بیشتر برای ساخت بازیهایی با گرافیک بالا و واقعگرایانه مناسب است اما یادگیری آن پیچیدهتر خواهد بود. این موتور توسط شرکت Epic Games توسعه یافته و در بازیهای بزرگی مانند Fortnite ،Gears of War و Hellblade 2 استفاده شده است. آنریل بهخاطر سیستم نورپردازی و فیزیک فوقالعادهاش، انتخابی عالی برای بازیهای بزرگ و پروژههای سینمایی است.
یکی از مهمترین مزایای آنریل، گرافیک و نورپردازی بینظیر آن است که از تکنولوژیهایی مثل Nanite و Lumen استفاده میکند. این ویژگیها باعث میشوند بازیها بدون نیاز به منابع بیشازحد، کیفیت گرافیکی بسیار بالایی داشته باشند. همچنین آنریل از سیستم Blueprint پشتیبانی میکند که به کاربران اجازه میدهد بدون نیاز به کدنویسی، منطق بازی خود را از طریق یک رابط بصری طراحی کنند. این ویژگی برای کسانی که با برنامهنویسی راحت نیستند، یک مزیت بزرگ محسوب میشود. آنریل انجین نهتنها برای بازیسازی، بلکه برای ساخت انیمیشنهای سهبعدی، فیلمهای دیجیتال و حتی معماری و طراحی صنعتی نیز استفاده میشود.
با این حال، آنریل نسبت به یونیتی پیچیدگی بیشتری دارد. بهدلیل استفاده از ++C و ابزارهای حرفهایتر، کار با آن برای افراد مبتدی چالشبرانگیزتر است. علاوه بر این، منابع سیستمی بیشتری مصرف میکند و برای اجرای روان نیاز به یک سیستم قویتر دارد. یادگیری مبانی و کار با محیط آنریل حدود دو تا سه ماه طول میکشد. اگر بخواهید به بلوپرینت مسلط شوید، سه تا شش ماه تمرین نیاز دارید. اما اگر قصد دارید ++C را یاد بگیرید و از کدنویسی حرفهای استفاده کنید، این زمان میتواند به یک سال یا بیشتر افزایش یابد.
اگر میخواهید سریعتر نتیجه بگیرید، یونیتی گزینهی بهتری است. یادگیری آن سادهتر است و منابع آموزشی فراوانی دارد. برای ساخت بازیهای دوبعدی، موبایل و حتی برخی بازیهای سهبعدی سبک، یونیتی انتخاب مناسبی خواهد بود. اما اگر بهدنبال ساخت بازیهای بزرگ، گرافیک سینمایی و پروژههای واقعگرایانه هستید، آنریل انجین بهترین انتخاب خواهد بود. البته باید در نظر داشته باشید که یادگیری آن پیچیدهتر است و نیاز به سختافزار قویتری دارد. اگر هنوز مطمئن نیستید، بهتر است ابتدا یونیتی را یاد بگیرید. وقتی اصول پایهای بازیسازی را یاد گرفتید، میتوانید به سراغ آنریل بروید و بررسی کنید که آیا آن موتور برای شما مناسبتر است یا نه.
در نهایت، هر دو موتور فوقالعاده هستند و یادگیری هر کدام از آنها میتواند شما را به یک بازیساز حرفهای تبدیل کند. مهمتر از انتخاب موتور، تمرین مداوم و ساختن پروژههای کوچک برای یادگیری عملی است. بنابراین مهمترین نکته این است که همین حالا دستبهکار شوید و اولین قدم را بردارید.
جمعبندی قسمت اول
همانطور که در ابتدای مقاله گفتم، اولین چیزی که برای ورود به این مسیر لازم دارید، یک طرز فکر درست و یک ارادهی قوی است. اگر بدانید که ورود به این عرصه، با وجود سختیهایی که دارد چقدر لذتبخش و پربازده است، قطعاً مسیر برایتان هموارتر میشود. پس از آن میتوانید با موتورهایی که به کدنویسی نیازی ندارند شروع کنید و بعد به سراغ موتورهای پیشرفتهتر و یادگیری مهارتهای لازم بروید.
این دسته از مقالات زمانی بهترین اثر را روی خواننده میگذارند که در مورد آنها بحث و بررسی شود. اگر فکر میکنید موضوعی از قلم افتاده است یا توضیحی برای اضافه کردن به این مقاله دارید، مایهی افتخار است که با شما همکلام شویم و نظرتان را بدانیم!
منتظر قسمت دوم باشید و پیشنهاد خود را در مورد قسمت بعدی با ما در میان بگذارید!
طراحی و اجرا :
وین تم
هر گونه کپی برداری از طرح قالب یا مطالب پیگرد قانونی خواهد داشت ، کلیه حقوق این وب سایت متعلق به وب سایت تک فان است
دیدگاهتان را بنویسید