یادداشت های یک بازی ساز تازه کار|بازی‌سازی مستقل

مسیر بازی سازی را تنها نرویم!
یادداشت های یک بازی ساز تازه کار|بازی‌سازی مستقل

هر چقدر فکر کردم در آخر به این نتیجه رسیدم که برای رسیدن به هدفم باید تجربیات و آموخته های خودم را در معرض دیدگان عموم قرار دهم تا ضمن معلوم شدن کم و کاستی های آنان، بتوانم در حد توانم به علاقمندان در این حوزه ، به خصوص کسانی که تازه می خواهند در این راه قدم بگذارند نیز کمک کنم. من نیز زمان زیادی از آغاز سفرم نمی گذرد پس بیایید هم سفر شویم!
افتخارات:
- رتبه سوم لول‌آپ ۹۷
- تقدیر هیئت داورن لول‌آپ ۹۸
- رتبه اول گیم‌جم پاییزه انستیتو ملی بازی‌سازی ۱۳۹۸
- برگزیده جشنواره شریف‌گیم ۱۴۰۰
صفحه اینستاگرام:
b2n.ir/040934
(موقتا غیرفعال‌شده)

  • ۰
  • ۰

شاید برای شما هم در ابتدای کار پیش آمده است که در بین انتخاب موتور های بازی سازی مقداری سردرگم شده اید و دقیقا نمی دانید که باید کار با کدام موتور را یاد بگیرد. آیا موتور های ساده ای همچون Game Maker  و construct2 می تواند کار من را راه بیاندازد یا باید کار با موتور هایی از قبیل Unity و Unreal را یاد بگیرم؟ من بر حسب تازه کار بودنم می توانم بگویم که به مقدار زیادی با یک موتور ساده و کوچک مثل کانستراکت2(که به کد نویسی هم احتیاج نداشت) و همچنین به مقدار مناسبی هم با یونیتی کار کرده ام. مدتی هم بر روی موتور بازی سازی آنریل هم مطالعه و تحقیق کردم تا بتوانم دید تقریبا مناسبی از این موتورها به دست آورم. فکر کنم الان می توانم بخصوص به کسانی که علاقمند به فعالیت در حوضه ی بازی سازی هستند چند توصیه بکنم و همچنین دید مناسبی را هم از توانایی های این موتور ها به آن ها بدهم.

بگذارید در همین ابتدای کار چند نکته ای را که خودم به آن ها رسیدم را برای شما بیان کنم. شاید شما هم هنگام شنیدن این جمله که "بدون برنامه نویسی می توانید بازی سازی کنید" خیلی خوشحال شده اید و به سرعت جذب آن منبع شده اید. من نیز همین گونه علاقمند به بازی سازی بدون برنامه نویسی شدم و لذا در بین جست و جو هایی که کردم  موتور بازی سازی بسیار کوچک ولی جالب کانستراکت 2 را انتخاب کردم. چرا؟ به خاطر اینکه برای خودم در ابتدای کار در نظر گرفته بودم که چون می خواهم صرفا بازی های دو بعدی بسازم و این موتور هم با توجه به گفته های دیگران می تواند تقریبا تمام نیاز های من را در این حوضه برطرف کند ( البته با کمی خرج خلاقیت و صرف وقت) این انتخاب را کردم. اما این انتخاب من چه پیامد هایی برای من داشت؟

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

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

اما بعد از بیان این تجربه حدودا دو سه ماهه! می رسیم به اصل مطلب؛ یعنی اینکه خب حالا کدام موتور بازی سازی را پیشنهاد می دهید؟ بد نیست برای رسیدن به جواب این سوال نگاهی به روال بازی سازی بیاندازیم. نمی دانم چقدر اخبار دنیای بازی را پیگیری می کنید ولی احتمالا اسم استاد "هیدئو کوجیما" به گوشتان خورده است. تا همین الان هم در مورد اینکه ایشان برای ساخت بازی جدیدشان کدام موتور بازی سازی را انتخاب کرده اند حرف و حدیث های فراوانی وجود دارد. اما خب این چه ربطی به موضوع ما دارد؟ 

(در یکی از مصاحبه ها با ایشان )کوجیما درباره موتور بازی سازی خود گفت :

ما تقریبا در جلوه های ویژه و بصری به حد دلخواه خود رسیدیم و به ساخت و تکمیل موتور خود بسیار نزدیک هستیم. و زمانی که از موتور خود اطمینان پیدا کردیم آن را به مرحله تولید کامل می رسانیم.

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

نظرات (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی