موتور بازی / Game Engine

تا به حال هنگام اجرای یک بازی کامپیوتری به این فکر کرده اید که این بازی چگونه ساخته شده است؟
در این نوشته قصد دارم شما را با هسته ی اصلی بازی سازی آشنا کنم. هسته مذکور همان موتوربازی (game engine) است. موتور بازی، یک سیستم نرم افزاری است که برای خلق و توسعه ی بازیهای ویدئویی طراحی شده است. تا به حال تعداد زیادی موتور بازی ساخته شده است که اگر بخواهیم از دید ساختاری آنها را دسته بندی کنیم؛ میتوانیم به دو دسته تقسیم کنیم: ۱٫ موتور بازی کنسول، ۲٫ موتور بازی رایانه. در زمینه کنسول میتوان به موتورهای بازی سازی Play Station اشاره کرد، یعنی نرم افزاری که برای تولید بازیهای Play Station استفاده میشود. در زمینه رایانه، از سیستم عاملهای گوناگون نام میبریم. مثلا موتور بازی سازی برای Windows (که در ایران رایج تر است). یک موتور بازی سازی مجموعه ی نرم افزارهای طراحی بازی است که نرم افزارهای کوچکتری را شامل میشود. به طور کلی، یک موتور بازی سازی از زیر مجموعههای زیادی تشکیل شده است که در اینجا به بعضی از آنها اشاره میکنم.
موتور دو بعدی: یکی از زیرمجموعههای موتوربازی است. این سیستم برای طراحی بخشهای دوبعدی یک game استفاده میشود. برخی بازیها ابتدا به صورت ۲D پیاده سازی میشوند، سپس به ۳D بدل میشوند. از جمله این بازیها میتوان به gameهای جاوا در گوشیهای موبایل اشاره کرد، مانند Bounce Tail برای نوکیا.
موتور سه بعدی: مرحله ی دوم سیستم است. در این بخش عناصر سه بعدی و شخصیتها پردازش میشوند. این قسمت در تمام موتورهای بازی سازی مشترک است.
کارگزار فیزیکی: بخش دیگر نرم افزار، موتور فیزیکی است که در آن حرکت شخصیتها، عناصر متحرک در بازی، حرکات سایهها و چیزهای دیگر شبیه سازی میشوند. مثلا در Fifa 09، طراحی استایلهای شوت، گل زنی، اخطارهای داور، سایه ی بازیکن و تشویقهای تماشاگران توسط کارگزار فیزیکی شبیه سازی میشوند. شاید بتوان گفت که بدون کارگزار فیزیکی، ساختن یک بازی غیرممکن است. از آنجایی که این مسئله در شرکتهای game سازی در دنیا اهمیت به سزایی دارد؛ physics’s engine به صورت جداگانه نیز عرضه میشود.
حساسیت برخورد: یا colision detection، پاره ی دیگر موتور بازی سازی است. این بخش، مسئول مشخص کردن برخوردهاست. مثلا در بازی کامپیوتری بیلیارد، اینکه توپ با چه شدتی و با چه سرعتی به گوشههای میز برخورد کند، یا اینکه توپ پس از برخورد با چه سرعتی برگشت داده شود، از وظایف این قسمت است. حساسیت برخورد، تنها در بازیها کاربرد ندارد، بلکه در تعاریف علم فیزیک و در نقشه برداری کامپیوتری کاربرد مهمیدارد.
موتور بازی سازی از قسمتهای دیگری نیز تشکیل شده که به آنها به صورت گذرا نگاهی میاندازیم: موتور صدا، کارگزار شبکه، کارگزار انیمیشن، هوش هنری، کدنویسی بازی و … . شخصی که بازی میسازد، از موتور بازی استفاده میکند. وی در محیط اولیه، محدوده ی فضا را مشخص میکند و متناسب با آن به طراحی شخصیتها (characters) میپردازد. سپس به موتور سه بعدی میآید و عناصر سه بعدی را مینویسد و در کارگزار فیزیکی، حرکات تمام بازی را طراحی میکند. در بخش بعد به بازی احساس واقعی بودن را میدهد؛ یعنی در واحد حساسیت برخورد، تمامیبرخوردها را خلق میکند تا بازی طبیعی جلوه کند. صداگذاری، انیمیشنهای متفرقه، شبکه کردن و سایر کدنویسیها از مراحل بعدی هستند. توجه دارید که تمامیاینها توسط یک تیم انجام میگردد و هرکس وظیفه خود را دنبال میکند. از جمله موتورهای بازی میتوان به Cipher و یا C4 Engine اشاره کرد. در این صفحه میتوانید لیست کامل موتورهای بازی سازی را مشاهده کنید.
مطالب مشابه



نظرات
مرسی کیا جالب بود و مفید
قابل نداشت!
محسن جان چرا در قسمت دسته ها در صفحه اصلی تعداد مقالات را نوشته : مقالات (۱) – در حالی که تعداد مقالات ۳ تا هست.
بخاطر Cache وبلاگ هست کیا جان برای من نوشته شده ۳ درسته مشکلی نیست با این حال ممونم از اینکه بهم اطلاع دادی
حل خواهد شد کمی صبر کنید.
ممنون. به یکی از سوالای من جواب دادین. اما هنوز هم ابهامانی برام وجود داره.اینکه میگین کدنویسی بازی هم قسمتی از انجین هست یعنی چه؟ میشه بیشتر توضیح بدید؟
چون من خیلی با روند ساخت بازی های ویدیویی آشنایی ندارم.
بعد اینها رایگانشون هم هست؟ کاش مثلا یه نمونه رایگانشو و چکونگی کار با اون رو نشون میدادین.
راستش منظورت رو دقیقاَ متوجه نشدم ولی موتورهایی رایگان هم هست ، البته باید به شما بگم که پی سی گیمز به معرفی اونها می پردازه و چناچه میخواهید بازی طراحی یا اطلاعاتی در این باره بدونید میتونید از انجمنهای تخصصی استودیو فنایی و پرشین دیزینر استفاده کنید.
اگر توی همین وب بگردی میتونستی یک موتور رایگان رو پیدا کنی البته اگر میگشتی.
ممنون.تو انجمن تخصصی استودیو فنایی عضو هستم. اما دقیق مطالب رو نخوندم.
از توضیحاتتون ممنون. فکر کنم باید دقیقت ر مطالبتون رو بخونم
یاد رفت بگم در مورد آموزش یکی از بچه ها تویی انجمن در مورد GM توضیح داده و اگر قصد شما اینه که میخوایید یه بازی درست کنید می تونید از یه چیز ساده شروع کنید.
من cahce خودم رو پاک کردم و دوباره به وبسایت اومدم اما هنوز تعداد مقالات ۱ هست.