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

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

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

  • ۰
  • ۰

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

 

کدام قسمت؟

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

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

 

یادتان نرفته است که...؟

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

 

گام های نمونه سازی

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

  • طراحی محیط / طراحی مرحله ی مورد نظر
    • طراحی مدل ها اولیه و مشخص کردن چینش اولیه محیط
    • طراحی و پیاده سازی جزئیات
      • اضافه کردن مدل ها با جزئیات بیشتر
      •  اضافه کردن بافت ها
      • اضافه کردن افکت ها و ...
  • طراحی شخصیت ها
    • مدل سازی
    • طراحی و پیاده سازی قابلیت ها
  • پیاده سازی هوش مصنوعی
  • پویانمایی شخصیت ها
  • صدا و موسیقی
  • طراحی HUD ها
  • بهینه سازی عملکرد بازی

           

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

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

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

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

نظرات (۰)

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

ارسال نظر

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