حجت جعفری
حجت جعفری
خواندن ۹ دقیقه·۱۵ روز پیش

کجای بازی سازی سخت است؟

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

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

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

رقابت شدید

صنعت بازی‌های ویدیویی در طول سالهای متمادی شاهد رشد بوده، همزمان با رشد مخاطبین و توسعه بازه سنی بازیکن‌ها، تعداد شرکت‌های بازی سازی نیز افزایش یافته که در نهایت باعث رشد تولید و تعداد بازی‌های منتشر شده در طول این سالها شده است.
با ورودی گوشی‌های همراه هوشمند سرعت رشد این صنعت بیشتر شد به طوری که در حال حاضر تخمین زده می‌شود که روزانه بیش ۵۰۰ بازی در هر یک از فروشگاه‌های AppStore و Google play منتشر می‌شود.
این رشد در بازار بازی‌های PC و کنسول‌ها نیز قابل مشاهده است، فقط در فروشگاه Steam در سال ۲۰۲۴ بیش از ۱۵ هزار بازی منتشر شده است!
همچنین ابزارهای ساخت بازی و به خصوص موتورهای بازی سازی مثل Unity و Unreal هم در دسترس عموم قرار گرفتند که باعث کاهش موانع ورود تازه کارها و تیم‌های کوچک به این صنعت شد.

تعداد بازی‌های منتشر شده سالیانه در فروشگاه Steam
تعداد بازی‌های منتشر شده سالیانه در فروشگاه Steam

در چنین بازار بزرگ، پیچیده و رقابتی هیچ تضمینی برای موفقیت نیست، ممکن است شما بازی خوبی ساخته باشید اما به دلایل گوناگون نتوانید در بازار موفق شوید.
یکی از بزرگترین مشکلات تیم‌ها و شرکت‌های ساخت بازی در چنین بازاری دیده شدن است.

مساله سرگرمی (Fun)

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

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

موضوع زمانی دشوارتر می‌شود که بخواهیم از این رسانه برای انتقال پیام نیز استفاده کنیم.

مساله تعامل (Interactivity)

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

تقلید یا نوآوری (Creativity)

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

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

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

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

پیچیدگی‌ فنی (Technical Complexity)

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

بسته به مقیاس پروژه و پیچیدگی طراحی، برای مثال ویژگی‌های (Features) درون بازی، پیاده‌سازی فنی نیز سخت‌تر و پیچیده‌تر می‌شود؛ به گونه‌ای که پیچیدگی فنی در بازی‌های آنلاین چندنفره، چندین برابر می‌شود.

پیاده‌سازی فنی بازی همواره باید به گونه‌ای باشد که یافتن Bugها و اشکالات، آسان باشد.

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

علاوه بر انعطاف‌پذیری، یکی از نیازمندی‌های اصلی ساخت بازی، کارایی (Performance) است. به همین دلیل، نیاز به مهارت‌های جدی برای بهینه‌سازی (Optimization) بازی است.

ساختار تیم (Team Structure)

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

پیچیدگی فرآیند تولید وابستگی کارها

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

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

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

در این میان، رسیدن به زمان‌بندی‌ها و کنترل هزینه نیز باید انجام شود که اصلاً کار راحتی نیست.

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

برای غلبه بر این چالش‌ها، تیم‌های بازی‌سازی موفق از راهکارهای مختلفی استفاده می‌کنند، از جمله:

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

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

کنترل کیفیت

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

همچنین، ارزیابی طراحی بازی و حس و حال آن به هیچ عنوان قابل خودکارسازی نیست؛ چرا که کاملاً وابسته به ادراک انسان از تعامل با دنیای بازی است.

در واقع، تست بازی فرایندی پیچیده و چندوجهی است که شامل موارد زیر می‌شود:

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

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

منابع:

https://www.statista.com/statistics/552623/number-games-released-steam/

بازی سازیهوش مصنوعینرم افزاربازی‌های ویدیوییبرنامه نویس
دانش آموخته هوش مصنوعی، برنامه نویس و مهندس کامپیوتر، بازی‌ساز سابق
شاید از این پست‌ها خوشتان بیاید