Skip to main content

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

مسیرهای ورود به بازی‌سازی دوبعدی موبایل: مستقل یا تیمی؟

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

بازی‌سازی مستقل (Indie Game Development)

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

کار در تیم یا شرکت بازی‌سازی

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

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

مهارت‌ها و تخصص‌های مورد نیاز برای بازی‌ساز شدن

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

مهارت برنامه‌نویسی (Programming)

ستون فقرات توسعه بازی‌های ویدیویی، برنامه‌نویسی است. یک برنامه‌نویس بازی مسئول پیاده‌سازی منطق بازی، مکانیک‌ها، سیستم‌های فیزیک، هوش مصنوعی، رابط کاربری و به طور کلی هر چیزی است که عملکرد فنی بازی را ممکن می‌سازد​. برای بازی‌های موبایل دوبعدی، محبوب‌ترین موتور بازی‌سازی حال حاضر یونیتی (Unity) است که از زبان #C برای اسکریپت‌نویسی استفاده می‌کند. همچنین موتور آنریل انجین (Unreal Engine) با زبان ++C (و سیستم بلوپرینت برای برنامه‌نویسی بصری) گزینه قدرتمند دیگری است. پس توصیه می‌شود با یکی از این موتورها و زبان‌های مرتبط آشنا شوید. بسیاری از کارفرمایان در صنعت بازی، دانش زبان‌هایی مثل سی‌شارپ و سی++ و ابزارهایی مانند Unity و Unreal را جزو شرایط اصلی استخدام می‌دانند​. البته موتورهای ساده‌تری هم برای شروع وجود دارند؛ مثلاً گودوت (Godot) که یک موتور متن‌باز سبک است و از زبان شبیه به پایتون (GDScript) استفاده می‌کند، یا موتورهایی مانند GameMaker Studio و Construct که برای ساخت بازی‌های دوبعدی ساده بسیار مناسب‌اند و حتی نیاز به کدنویسی زیادی ندارند. با این حال حتی اگر از ابزارهای کم‌کدنویسی استفاده کنید، درک مفاهیم برنامه‌نویسی و الگوریتمیک کمک بزرگی در حل مشکلات فنی بازی به شما خواهد کرد. برنامه‌نویسی همچنین به مهارت‌های تحلیلی و ریاضی نیاز دارد تا بتوانید منطق بازی (مثلاً محاسبه امتیازات، حرکت اشیا، برخوردها و …) را درست پیاده کنید​.

مهارت طراحی بازی (Game Design)

طراحی بازی به جنبه‌های خلاقانه و مفهومی ساخت بازی اشاره دارد. یک طراح بازی بر روی ایده، قوانین و ساختار کلی بازی کار می‌کند: داستان و دنیای بازی چیست؟ اهداف و قوانین چه هستند؟ مراحل چگونه پیشرفت می‌کنند و چالش‌ها به چه شکل افزایش می‌یابند؟ تجربه کاربر (گیمر) هنگام بازی کردن چگونه باشد؟​ طراح بازی ممکن است طراح مرحله (Level Designer) هم باشد، یعنی جزئیات چیدمان موانع، دشمنان و آیتم‌ها را در هر مرحله طراحی کند​. برای موفقیت در طراحی بازی، خلاقیت و داستان‌سرایی اهمیت زیادی دارد. بازی‌های جذاب معمولاً ایده اولیه نوآورانه یا داستان درگیرکننده‌ای دارند که گیمر را مجذوب می‌کند. تقویت مهارت داستان‌نویسی و داستان‌گویی می‌تواند به ویژه برای طراحان بازی بسیار مفید باشد​. البته طراحان بازی لزوماً نویسنده داستان نیستند اما باید دید هنری نسبت به همه جنبه‌های بازی داشته باشند تا مطمئن شوند محصول نهایی از نظر گیم‌پلی و زیبایی‌شناسی، تجربه‌ای عالی به بازیکن ارائه می‌دهد. جالب است بدانید یک طراح بازی خوب حتی اگر خودش کدنویس قهاری نباشد، باید با اصول برنامه‌نویسی آشنا باشد تا بتواند ایده‌هایش را به تیم فنی منتقل کند​. علاوه بر این، طراح بازی اغلب با طراحان هنری، صداگذارها و برنامه‌نویسان همکاری نزدیک دارد؛ بنابراین مهارت ارتباطی و کار تیمی نیز برای یک طراح بازی ضروری است​.

مهارت طراحی گرافیک و هنر بازی (Art & Graphics)

بخش دیداری هر بازی بر عهده هنرمندان و گرافیست‌های بازی است. در بازی دوبعدی موبایل، شما به گرافیک دوبعدی (۲D Art) نیاز دارید؛ از طراحی کاراکترها و محیط‌ها گرفته تا رابط کاربری (منوها، دکمه‌ها و …). یک آرتیست کانسپت (Concept Artist) طرح‌های مفهومی از کاراکترها، موجودات، محیط‌ها و آیتم‌ها را می‌کشد​. سپس گرافیست دوبعدی یا پیکسل آرتیست این طرح‌ها را به تصاویر دیجیتال با فرمت مناسب برای بازی تبدیل می‌کند. در برخی تیم‌ها ممکن است نقش تکنیکال آرتیست وجود داشته باشد که کسی است که هم از هنر و هم از جنبه‌های فنی گرافیک (مثلاً بهینه‌سازی تصاویر برای موتور بازی) سر در می‌آورد​. برای یک مبتدی در خانه، احتمالاً شما باید خودتان کارهای گرافیکی بازی را انجام دهید یا از دارایی‌های آماده استفاده کنید. بنابراین آشنایی با ابزارهایی مثل Adobe Photoshop یا Illustrator برای طراحی دوبعدی بسیار مفید است. حتی اگر نقاشی حرفه‌ای بلد نیستید، می‌توانید از هنر پیکسلی ساده شروع کنید یا از گرافیک‌های رایگان موجود در اینترنت استفاده کنید. به مرور که جلو بروید، مهارت‌های هنری شما نیز بهتر خواهد شد. طراحی گرافیک علاوه بر جنبه هنری، یک بُعد تجربی هم دارد؛ یعنی اینکه گرافیست باید با طراح بازی همکاری کند تا مطمئن شود تصاویر و المان‌های گرافیکی بازی در خدمت گیم‌پلی و تجربه کاربری هستند. در مجموع، زیبایی بصری بازی و هویت گرافیکی آن نقشی اساسی در جلب مخاطب دارد، مخصوصاً در بازار شلوغ بازی‌های موبایل که ظاهر جذاب می‌تواند تفاوت‌ساز باشد.

مهارت صداگذاری و موسیقی (Audio Design)

هرچند بازی‌سازی دوبعدی بیشتر با تصویر سر و کار دارد، اما صدا نیز یک مؤلفه مهم برای ایجاد یک تجربه غوطه‌ورکننده است. یک بازی خوب معمولاً دارای افکت‌های صوتی (صدای حرکت، پرش، برخورد، انفجار، کلیک روی دکمه‌ها و …) و موسیقی زمینه مناسب است. اگر تیم شما بزرگ باشد، ممکن است یک صداگذار (Sound Designer) یا آهنگساز در گروه داشته باشید که وظیفه خلق یا انتخاب صداها و موسیقی را بر عهده دارد. اما برای یک مبتدی مستقل، اغلب باید از مجموعه‌های صدای آماده استفاده کنید یا به صورت اولیه خودتان صدا ضبط/تدوین کنید. توانایی کار با نرم‌افزارهای ویرایش صدا مثل Audacity یا FL Studio می‌تواند کمک‌کننده باشد. نکته مهم در بخش صدا این است که صداها و موسیقی باید با اتمسفر و سبک بازی هماهنگ باشند. مثلا یک بازی پلتفرمر کودکانه موسیقی شاد و افکت‌های بامزه می‌طلبد، در حالی که یک بازی معمایی آرام نیازمند موسیقی ملایم‌تری است. به جز جنبه خلاقانه، تنظیم حجم صداها و بهینه‌سازی آن‌ها برای دستگاه‌های موبایل (که اسپیکرهای کوچکی دارند) نیز مهارتی فنی است که به دست خواهید آورد. هرچند ممکن است صداگذاری در اولویت‌های اول یادگیری یک بازی‌ساز مبتدی نباشد، اما نباید نقش آن را در کیفیت نهایی بازی دست کم گرفت.

مهارت مدیریت پروژه و تولید (Project Management & Production)

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

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

همان‌طور که می‌بینید، بازی‌سازی ترکیبی از مهارت‌های فنی (مثل برنامه‌نویسی)، مهارت‌های هنری (مثل گرافیک و صدا) و مهارت‌های نرم (کار تیمی، حل مسئله، خلاقیت) است. شاید در ابتدا یادگیری همه این موارد دشوار به نظر برسد اما نگران نباشید؛ لازم نیست در همه چیز استاد باشید! بسیاری از بازی‌سازان موفق کسانی هستند که در یک زمینه تبحر بالایی دارند و در بقیه زمینه‌ها اطلاعات پایه‌ای کسب کرده‌اند. به مرور زمان و با تمرین عملی پروژه‌های کوچک (که در ادامه معرفی می‌شوند) شما هم این مهارت‌ها را در خود تقویت خواهید کرد​. مهم این است که کنجکاو و مشتاق یادگیری باشید و از کسب مهارت‌های جدید نترسید.

منابع آموزشی آنلاین (فارسی و انگلیسی)

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

منابع آموزشی فارسی

وب‌سایت بازی‌ساز باش (bazisazbash.com):

یک منبع عالی آموزش بازی‌سازی به زبان فارسی است که شامل ده‌ها مقاله آموزشی رایگان، آموزش‌های ویدیویی و دوره‌های آنلاین در زمینه‌های مختلف بازی‌سازی (برنامه‌نویسی، طراحی، گرافیک و …) می‌باشد​. برای مثال، مقالاتی در مورد شروع بازی‌سازی مستقل، معرفی موتورهای بازی، و توصیه‌هایی برای مبتدیان در این سایت موجود است. اگر دنبال آموزش ساخت بازی با Unity یا Unreal به زبان ساده هستید، بازی‌ساز باش دوره‌های خوبی دارد. طبق توصیه یکی از مربیان این سایت، برای شروع می‌توانید از آموزش‌های رایگان بازی‌ساز باش که کم هم نیستند استفاده کنید​.

سایت یونیتیکورن (unitycorn.ir)

یونیتیکورن یک پایگاه آموزشی فارسی تخصصی برای یادگیری Unity و مباحث بازی‌سازی است. این سایت ساختار دوره‌ای دارد و از مقدمه بازی‌سازی، آموزش نصب یونیتی، آموزش برنامه‌نویسی #C، گرفته تا آموزش‌های پیشرفته‌تر Unity (دوبعدی و سه‌بعدی) را پوشش داده است​. همچنین بخشی برای آموزش Photoshop برای ساخت گرافیک بازی و حتی معرفی پروژه‌های تمرینی وجود دارد​​. تمامی این مطالب به رایگان در قالب متن و تصویر ارائه شده و برای کسی که می‌خواهد گام‌به‌گام با Unity پیش برود بسیار مفید است. مزیت یونیتیکورن این است که کاملاً به فارسی توضیح داده و ساختار منسجمی دارد، گویی یک دوره آموزشی کامل را دنبال می‌کنید.

تاد آکادمی

کانال یوتیوب تاد اکادمی جلسه های تخصصی داخلی استودیو تاد است که به صورت عمومی منتشر شده است. این مطالب در مورد طراحی بازی، کار گروهی، بازاریابی و ترفندهای ASO و موضوعات متنوع دیگر به رایگان در دسترس است.

مجموعه دوره‌ها و آموزش‌های فرادرس و سایر وب‌سایت‌های آموزشی

وب‌سایت‌هایی نظیر فرادرس (faradars.org) و دانشجویار دوره‌های آموزشی فارسی (رایگان و پولی) برای بازی‌سازی ارائه می‌کنند. برای مثال، فرادرس یک مجموعه آموزش بازی‌سازی کامپیوتری و موبایل از مقدماتی تا پیشرفته دارد​ و همچنین آموزش ساخت بازی پلتفرمر دوبعدی در یونیتی​. دانشجویار نیز دوره‌های پروژه‌محور Unity، Unreal و حتی ساخت بازی دوبعدی با کتابخانه‌هایی مثل Pygame (پایتون) دارد. مزیت این دوره‌ها ساختارمند بودن آن‌هاست اما نیاز به صرف هزینه و زمان دارید. اگر ترجیح می‌دهید همه چیز مرحله به مرحله و به زبان فارسی آموزش داده شود، این دوره‌ها گزینه خوبی هستند. علاوه بر این، سایت تاپ‌لرن و کدیاد نیز بخش‌هایی برای آموزش Unity دارند​ که می‌توانید بررسی کنید.

انجمن‌ها و شبکه‌های اجتماعی فارسی

یکی از بهترین راه‌ها برای یادگیری، پرسش و پاسخ در انجمن‌های تخصصی است. انجمن گفتگوی KMB Academy (که پیش‌تر از آن نقل‌قول کردیم) محلی مناسب برای مطرح کردن سوالات شما در زمینه بازی‌سازی است و مربیان و سایر اعضا پاسخ می‌دهند. همچنین انجمن‌های قدیمی‌تر نظیر بخش بازی‌سازی در فروم بازی‌سنتر یا گیمفا نیز فعال هستند​​. در تلگرام هم گروه‌های گفتگوی بازی‌سازی ایرانی وجود دارد (مثلاً گروه‌های مرتبط با Unity) که با یک جستجوی ساده می‌توانید آن‌ها را پیدا کنید؛ هرچند سطح بحث‌ها متغیر است اما برای رفع اشکال بد نیست. به علاوه، بنیاد ملی بازی‌های رایانه‌ای ایران و انستیتو ملی بازی‌سازی نیز کارگاه‌ها و رویدادهایی برگزار می‌کنند که اخبارشان را می‌توانید در سایت ircg.ir دنبال کنید​. خلاصه اینکه جامعه بازی‌سازی ایران رو به رشد است و با کمی جستجو می‌توانید هم‌مسیران خود را پیدا کنید.

سایر منابع فارسی

از دیگر منابع قابل ذکر، کانال‌های آموزش بازی‌سازی در آپارات و یوتیوب به زبان فارسی هستند. برای مثال، کانال یوتیوب Sajad Devs دوره‌ای صفر تا صد آموزش بازی پلتفرمر دوبعدی در یونیتی منتشر کرده که بسیار پرطرفدار بوده است​ (لینک youtube.com). همچنین برخی آموزش‌های موتورهای دیگر مانند آموزش گودوت در آکادمی بازیاتو (لینک youtube.com) هم به صورت ویدیوهای فارسی موجود است​. در آپارات می‌توانید عبارت “آموزش یونیتی” یا “آموزش بازی‌سازی دوبعدی” را جستجو کنید و به ویدیوهای مفیدی برسید​ (aparat.com). البته کیفیت این ویدیوها متفاوت است، پس سعی کنید از منابعی استفاده کنید که بازخورد خوبی گرفته‌اند.

منابع آموزشی انگلیسی

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

پلتفرم Unity Learn

شرکت Unity یک پلتفرم آموزشی رایگان به نام Unity Learn دارد که بیش از ۷۵۰ ساعت محتوای آموزشی در قالب دوره‌ها و پروژه‌های تعاملی ارائه می‌کند​. مسیرهایی تحت عنوان Pathways وجود دارد که شما را از سطح مبتدی با مبانی ساخت بازی دوبعدی و سه‌بعدی آشنا می‌کند. اگر قصد دارید کار با موتور Unity را یاد بگیرید، Unity Learn نقطه شروع ایده‌آلی است چرا که آموزش‌ها کاملاً ساختاریافته و رسمی هستند. همچنین مستندات (Documentation) رسمی Unity و انجمن پرسش‌وپاسخ Unity (Unity Forums) منابعی هستند که هر بازی‌سازی باید بلد باشد با آن‌ها کار کند تا مشکلات فنی خود را حل کند.

دوره‌های آنلاین بین‌المللی

سایت‌های آموزش آنلاین مطرح مانند Coursera، Udemy و edX دوره‌های متنوعی در زمینه بازی‌سازی دارند​. برای مثال، دانشگاه میشیگان در Coursera تخصصی به نام Game Design and Development ارائه کرده است. یا در Udemy دوره‌های پرفروشی مانند Unity 2D & 3D Game Development with C# پیدا می‌شود​. سایت Pluralsight نیز دوره‌هایی در این حوزه دارد. بسیاری از این دوره‌ها توسط اساتید با تجربه تدریس می‌شوند و پروژه‌محور هستند. البته اکثرشان پولی‌اند، اما در تخفیف‌ها می‌توانید با قیمت خیلی پایین تهیه کنید. اگر دنبال یادگیری ساختارمند به انگلیسی هستید و مانعی برایتان ندارد که هزینه کنید، این دوره‌ها بسیار مفید خواهند بود.

کانال‌های یوتیوب آموزشی

یوتیوب پر از کانال‌های آموزش بازی‌سازی است که رایگان می‌توانید از آن‌ها استفاده کنید. چند کانال برجسته که برای مبتدی‌ها توصیه می‌شوند عبارتند از:
Brackeys – یکی از بهترین کانال‌ها برای شروع Unity که آموزش‌های پروژه‌محور ساده تا نکات پیشرفته‌تر را پوشش می‌دهد​. هر مفهومی (مثلاً ساخت یک بازی پلتفرمر، ساخت منوی بازی، سیستم امتیازدهی و …) را به زبان ساده آموزش داده است. اگر می‌خواهید با سرعت مناسبی Unity را فرابگیرید، ویدیوهای Brackeys عالی هستند.
Unity (Official) – کانال رسمی یوتیوب Unity که مجموعه‌ای از آموزش‌های مفید و پروژه‌های نمونه دارد​. این کانال همیشه آخرین قابلیت‌های Unity را معرفی می‌کند و برای یادگیری عمیق‌تر برخی مباحث (مثلاً سیستم ذرات، یا ساخت بازی دوبعدی در Unity) ویدیوهای باکیفیتی ارائه می‌دهد.
Unreal Engine (Official) – اگر به Unreal Engine علاقه دارید، کانال رسمی آنریل انجین شامل ده‌ها آموزش و نمونه پروژه است. البته آنریل برای بازی‌های دوبعدی موبایل کمتر استفاده می‌شود، اما اگر قصد دارید در آینده به سمت پروژه‌های بزرگ‌تر بروید، بد نیست این کانال را هم دنبال کنید​.
The Cherno – این کانال برای کسانی مناسب است که می‌خواهند عمیق‌تر وارد برنامه‌نویسی بازی (خصوصاً با ++C) شوند​. سازنده کانال به جزئیات برنامه‌نویسی موتور بازی اختصاصی می‌پردازد و مفاهیم پیچیده‌تری را آموزش می‌دهد. شاید برای شروع کاملاً مناسب نباشد مگر اینکه پایه برنامه‌نویسی خوبی داشته باشید، اما ذکر آن برای آشنایی بود.
Game Developers Conference (GDC) – کانال رسمی کنفرانس سالانه توسعه‌دهندگان بازی که پر از ویدیوهای ضبط‌شده سخنرانی‌ها و پنل‌های تخصصی است​. این ویدیوها اکثراً پیشرفته‌اند و درباره تجربیات بازی‌سازان حرفه‌ای در پروژه‌های بزرگ یا تحلیل جنبه‌های مختلف صنعت بازی است. شاید مستقیماً آموزشی مرحله‌به‌مرحله به حساب نیایند، اما دنبال کردن آن‌ها به شما دید بسیار وسیع‌تری از ترندها و اصول حرفه‌ای صنعت بازی می‌دهد.

سایت‌ها و وبلاگ‌های تخصصی

چند وبسایت شناخته‌شده در حوزه بازی‌سازی وجود دارند که مقالات آموزشی و اخبار صنعت را منتشر می‌کنند. یکی از قدیمی‌ترین‌ها GameDev.net است که شامل آموزش‌ها، تالار گفتگو و مقالات فنی بسیاری در زمینه‌های مختلف (گرافیک، شبکه، طراحی، تولید و …) است​. همچنین Gamasutra (که اخیراً به GameDeveloper.com تغییر نام داده) مقالات سطح بالایی از بازی‌سازان باتجربه دارد. وبلاگ GameAnalytics نیز منبع خوبی برای یادگیری جنبه‌های کسب‌وکاری و تحلیلی بازی‌سازی است و درباره نکاتی برای ساخت بازی‌های موفق، داستان موفقیت بازی‌ها و توصیه‌های بازاریابی مطالب مفیدی ارائه می‌کند​. مطالعه این مقالات به شما کمک می‌کند فراتر از مسائل فنی، با تفکر طراحی بازی و استراتژی‌های انتشار نیز آشنا شوید.

انجمن‌های پرسش و پاسخ و شبکه‌های اجتماعی

برای رفع مشکلات فنی یا تبادل نظر، انجمن‌های انگلیسی‌زبان بسیار مفیدی در دسترس هستند. سایت Stack Exchange (Stack Overflow) بخشی مخصوص Game Development دارد که می‌توانید سوالات برنامه‌نویسی/ریاضی مربوط به بازی را آنجا بپرسید. انجمن Unity و انجمن Unreal به طور رسمی توسط این شرکت‌ها اداره می‌شوند و تقریبا هر مشکلی را در آرشیو خود دارند. در شبکه اجتماعی Reddit نیز جوامع فعالی مثل r/gamedev (برای مباحث کلی بازی‌سازی)، r/Unity3D و r/UnrealEngine (برای پرسش‌های مربوط به آن موتورها) و r/IndieDev (برای اشتراک تجربه‌های بازی‌سازان مستقل) وجود دارد. مشارکت در این انجمن‌ها شما را در معرض تجربه‌های واقعی دیگران قرار می‌دهد و گاهاً می‌توانید همکاران جدید یا حتی هم‌تیمی برای پروژه‌های مستقل پیدا کنید.

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

پروژه‌های تمرینی ساده برای شروع یادگیری

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

 بازی سکوبازی (پلتفرمر) ساده

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

بازی رانر بی‌انتها (Endless Runner)

این سبک در سال‌های اخیر روی موبایل بسیار محبوب بوده است (نمونه مشهور آن Subway Surfers یا Temple Run هرچند آن‌ها سه‌بعدی‌اند). اما نسخه دوبعدی رانر بی‌انتها هم متداول است (مثل Flappy Bird که نوعی رانر بی‌انتهاست که شخصیت پرنده دائماً در حال پیشروی است). ایده این سبک این است که کاراکتر بازی به طور خودکار به جلو (یا بالا) حرکت می‌کند و بازیکن باید با واکنش‌های سریع، موانع را پشت سر بگذارد و تا می‌تواند دوام بیاورد. پیاده‌سازی یک رانر بی‌انتها به شما مفاهیمی مانند تولید خودکار مرحله را می‌آموزد. برای مثال، می‌توانید بازی‌ای بسازید که یک دونده در یک مسیر بی‌پایان می‌دود و باید از روی موانع بپرد یا جاخالی بدهد. هرچقدر جلوتر می‌رود سرعت بازی بیشتر شود و موانع سخت‌تر شوند. در این پروژه یاد می‌گیرید چگونه یک چرخه بی‌نهایت بسازید – مثلاً چند قطعه مسیر از پیش آماده را به طور تصادفی پشت سر هم قرار دهید و همیشه وقتی کاراکتر به انتهای یک قطعه رسید، قطعه بعدی را اضافه کنید تا توهم بی‌انتها بودن ایجاد شود. همچنین یاد می‌گیرید سیستم امتیازدهی بر اساس زمان یا مسافت طراحی کنید (مثلاً هرچه بیشتر دوید امتیاز بالاتر). ساخت یک رانر کمک می‌کند با مدیریت صحنه‌ها، حلقه بازی (Game Loop) و افزایش تدریجی سختی بازی آشنا شوید. از آنجا که رانرها معمولاً کنترل ساده‌ای دارند (مثلاً فقط لمس برای پرش در Flappy Bird)، برای یک مبتدی از نظر پیاده‌سازی ورودی هم ساده‌اند اما در عین حال بهینه‌سازی و روان بودن گیم‌پلی چالشی است که تجربه شما را بالا می‌برد.

بازی پازل یا معمایی ساده

بازی‌های پازلی روی موبایل مخاطبان زیادی دارند (از ۲۰۴۸ گرفته تا Candy Crush). پیاده‌سازی یک بازی معمایی ساده می‌تواند توانایی شما در برنامه‌نویسی منطق بازی و طراحی رابط کاربری را تقویت کند. به عنوان مثال، می‌توانید یک بازی تطبیق کاشی‌ها (matching puzzle) ساده بسازید؛ یک شبکه ۴×۴ که در آن اعداد یا شکل‌هایی ظاهر می‌شوند و بازیکن باید کاشی‌های مشابه را به هم وصل کند تا امتیاز بگیرد. یا ساخت نسخه ساده‌ای از باز‌ی معروف Snake که در آن مار با هر چیزی که می‌خورد بلندتر می‌شود و نباید به دیواره یا خودش برخورد کند. حتی یک بازی حدس کلمه ساده یا معمای حافظه (جفت کردن کارت‌های مشابه از میان کارت‌های پنهان) می‌تواند گزینه تمرینی باشد. در پروژه‌های پازلی، شما بیشتر با منطق بازی و طراحی UI سروکار خواهید داشت. برای مثال، در بازی matching باید منطق چک کردن یکسان بودن دو انتخاب بازیکن را کدنویسی کنید و در Snake باید برخورد مار با خودش یا دیواره را مدیریت کنید و سیستم افزایش طول مار را بنویسید. همچنین تقریباً در همه این بازی‌ها یک رابط کاربری شامل منوی شروع، نمایش امتیاز و دکمه‌های ساده وجود دارد که به شما فرصت می‌دهد کار با سیستم UI موتور بازی را یاد بگیرید. بازی‌های معمایی معمولاً گرافیک و حرکت پیچیده‌ای ندارند و تمرکز بیشتر روی کدنویسی قوانین بازی است؛ لذا برای تمرین الگوریتم فکر کردن بسیار مناسب هستند.

پروژه‌های کوچک دیگر

علاوه بر سه مورد بالا، پروژه‌های تمرینی ریز و درشت دیگری هم هستند که می‌توانید امتحان کنید. مثلاً پیاده‌سازی بازی Pong کلاسیک (دو پدال که توپ را به هم پاس می‌دهند) یکی از ساده‌ترین پروژه‌ها برای شروع برنامه‌نویسی بازی است. یا ساخت یک تیراندازی دوبعدی ساده که در آن فضاپیمای بازیکن تیر شلیک می‌کند و دشمنان را منفجر می‌کند (شبیه بازی قدیمی Galaga یا Space Invaders) می‌تواند تجربه خوبی از کار با ورودی، تولید گلوله، برخورد گلوله به دشمن و سیستم امتیازدهی باشد. حتی ساخت یک مرحله از بازی تیراندازی-platformer مانند کونترا (Contra) یا Metal Slug به صورت خیلی ساده می‌تواند پروژه تمرینی باشد – البته این شاید برای شروع کمی سنگین شود. نکته مهم این است که در ابتدای راه، مقیاس پروژه را کوچک نگه دارید. مثلا به جای اینکه بگویید “می‌خواهم یک بازی ماجراجویی ۱۰ مرحله‌ای بسازم”، بگویید “می‌خواهم یک مرحله ساده با یک نوع دشمن بسازم”. با اتمام هر کدام از این پروژه‌های کوچک، اعتماد به نفس و دانش شما افزایش می‌یابد و می‌توانید سراغ پروژه‌ی کمی بزرگ‌تر بروید.

نکته: حتماً پس از تکمیل هر پروژه تمرینی، زمانی را به بازبینی و بهبود آن اختصاص دهید. مثلاً وقتی پلتفرمر ساده خود را ساختید، فکر کنید چه ویژگی‌های کوچکی می‌توانید به آن اضافه کنید (مثلا یک صدای پرش، یا یک انیمیشن ساده برای کاراکتر) و با همین تغییرات کوچک، چیزهای جدید یاد بگیرید. همچنین بد نیست پروژه‌های خود را به اشتراک بگذارید – با دوستان، در انجمن‌ها یا شبکه‌های اجتماعی توسعه‌دهندگان indie – تا بازخورد بگیرید و اشکالاتتان را پیدا کنید. فراموش نکنید که تجربه عملی بهترین معلم است؛ هرچه بیشتر بازی بسازید (حتی بازی‌های ناکامل و آزمایشی)، آماده‌تر خواهید بود که در آینده ایده‌های بزرگ‌تر خود را عملی کنید.

تمرکز روی برنامه‌نویسی، طراحی یا تولید محتوا؟ (راهنمای انتخاب مسیر تخصصی)

هنگامی که تازه وارد دنیای بازی‌سازی می‌شوید، ممکن است از خود بپرسید کدام بخش از فرآیند ساخت بازی برای شما مناسب‌تر است. آیا باید بیشتر روی برنامه‌نویسی تمرکز کنید یا روی طراحی بازی؟ یا شاید شما عاشق هنر و تولید محتوا (گرافیک/صدا) هستید و بخواهید آن را دنبال کنید؟ پاسخ این سوال برای هر فرد متفاوت است و به مهارت‌ها و علایق شخصی او بستگی دارد. با این حال، در ادامه چند راهنمایی کلی ارائه می‌شود تا به عنوان یک مبتدی بتوانید مسیر تخصصی خود را بهتر انتخاب کنید.

علایق و توانمندی‌های خود را کشف کنید

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

شناخت تفاوت نقش‌ها

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

می‌توان هر دو را یاد گرفت، اما یکی را در اولویت بگذارید

شاید بگویید من هم به برنامه‌نویسی علاقه دارم هم به طراحی! اتفاقاً خیلی از بازی‌سازان موفق افرادی چندمهارته هستند. شما قطعاً می‌توانید با صرف زمان، هم کدنویسی یاد بگیرید هم طراحی و گرافیک. اما توصیه می‌شود برای شروع یکی را در اولویت اصلی قرار دهید​. زیرا هر کدام دنیای عمیقی دارند و اگر همزمان بدون تمرکز بخواهید در همه جهت‌ها پیش بروید، ممکن است گیج شوید یا سرعت پیشرفتتان کند شود. مثلا تصمیم بگیرید «اول من زبان #C و موتور Unity را خوب یاد می‌گیرم (تمرکز روی برنامه‌نویسی)، در کنارش طراحی مرحله هم انجام می‌دهم ولی خیلی وارد جزئیات گرافیک نمی‌شوم.» یا برعکس «من روی یادگیری هنر پیکسلی و انیمیشن دو‌بعدی تمرکز می‌کنم، در کنارش با پلاگین‌های آماده سعی می‌کنم منطق بازی را زیاد کدنویسی نکنم.» به هر حال بد نیست یک نقطه شروع مشخص برای عمیق شدن انتخاب کنید و پس از اینکه به سطح قابل قبولی رسیدید، می‌توانید حوزه‌های دیگر را هم تقویت کنید. همان‌طور که یک مربی بازی‌سازی می‌گوید: می‌توانی هر دو را یاد بگیری، ولی بهتر است از یک نقطه شروع کنی و بعداً به سمت دیگری حرکت کنی​.

بازار کار و اهداف بلندمدت را در نظر بگیرید

اگر هدف شما ورود به بازار کار (استخدام در شرکت‌های بازی‌سازی) است، بد نیست نیاز صنعت را هم مدنظر قرار دهید. در حال حاضر به نظر می‌رسد برنامه‌نویسان Unity در ایران و جهان تقاضای بالایی دارند، پس متخصص شدن در این زمینه می‌تواند فرصت‌های شغلی خوبی ایجاد کند. از سوی دیگر، طراحان بازی در شرکت‌های بزرگ معمولاً کسانی هستند که سال‌ها سابقه دارند و از نقش‌های دیگر به این موقعیت رسیده‌اند؛ یعنی شاید برای یک مبتدی سخت باشد که مستقیماً شغل “Game Designer” به دست آورد. اما گرافیست‌های دوبعدی، آرتیست‌های سه‌بعدی یا انیماتورها نیز تقاضای خوبی دارند. در تیم‌های کوچک مستقل، همه مهارت‌ها ارزشمندند ولی اگر قصد مهاجرت یا کار در شرکت خارجی دارید، حتماً روی یک تخصص بسیار مسلط شوید (مثل برنامه‌نویسی شبکه بازی‌های آنلاین، یا طراحی کاراکتر دوبعدی و انیمیشن). به طور خلاصه، چشم‌انداز آینده خود را تجسم کنید: دوست دارید پنج سال دیگر شما را به عنوان چه متخصصی بشناسند؟ آن تصویر می‌تواند راهنمای مسیر امروزتان باشد.

از تجربه دیگران استفاده کنید

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

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

جمع‌بندی و توصیه پایانی

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

کوچک شروع کنید، بزرگ بیندیشید

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

همواره در حال یادگیری باشید

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

بازخورد بگیرید و ارتباط بسازید

از نشان دادن کارهایتان نترسید. چه یک نمونه اولیه ناقص، چه یک بازی کامل – آن را به دیگران بدهید بازی کنند و نظر بدهند. انتقادات سازنده بهترین راه برای پیشرفت هستند. همچنین با جامعه بازی‌سازان در تماس باشید؛ چه به صورت آنلاین در انجمن‌ها و گروه‌ها، چه در رویدادهای حضوری (گیم‌جم‌ها، نمایشگاه‌ها و …). شبکه‌سازی می‌تواند برای آینده شما بسیار مفید باشد؛ شاید هم‌بازی‌ساز یا سرمایه‌گذار ایده‌آلتان را در همین ارتباطات بیابید.

هم کار تیمی را تجربه کنید هم کار انفرادی را

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

صبر و پشتکار داشته باشید

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

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

منابع و مراجع:

پیشرفت فناوری و دسترسی عموم به دانش بازی‌سازی – naringames.com

مزایا و معایب بازی‌سازی مستقل – unitycorn.ir​

؛ گفتگوی KMB​ – froum.kmb.academy

نقش‌ها و مشاغل در تیم بازی‌سازی – unitycorn.ir​

اهمیت زبان‌های برنامه‌نویسی و ابزارها (Unity, Unreal) – irantalent.com​

ضرورت تقویت داستان‌پردازی برای طراحان بازی – naringames.com​

توصیه به استفاده از آموزش‌های رایگان فارسی – bazisazbash.com​

منابع انگلیسی (Unity Learn دارای ۷۵۰+ ساعت آموزش) – medium.com​

انجمن‌ها و سایت‌های تخصصی (GameDev.net و GameAnalytics blog) – medium.com​

معرفی بهترین کانال‌های یوتیوب بازی‌سازی – گفتگو در KMB​ – kmb.academy

تفاوت وظایف برنامه‌نویس و طراح بازی – گفتگوی کی-ام-بی​ – kmb.academy  ب