زمان مطالعه: 8 دقیقه
تبلیغات
Ad

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

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

تبلیغات
Ad

موتور بازی‌ سازی چیست؟

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

حالا برویم به گذشته و نگاهی به تاریخچه‌ی موتور بازی‌ سازی بیندازیم. اولین روزهای بازی‌ سازی در دهه‌ی ۷۰ و ۸۰ میلادی، خبری از موتورهای بازی نبود. توسعه‌دهندگان مجبور بودند برای هر بازی، یک موتور اختصاصی طراحی کنند. مثلاً اگر به بازی‌هایی مثل Pac-Man یا Donkey Kong فکر کنید، این بازی‌ها با کدهای دست‌ساز و بسیار ساده خلق شدند. اما همه‌چیز با ظهور موتورهای قابل‌استفاده‌ی مجدد در دهه‌ی ۹۰ تغییر کرد. موتور id Tech 1، که برای بازی افسانه‌ای Doom طراحی شد، یکی از اولین موتورهایی بود که توسعه‌دهندگان دیگر می‌توانستند از آن برای ساخت بازی‌های خود استفاده کنند. این اتفاق، مفهوم موتور بازی‌ سازی را به عنوان یک ابزار چندمنظوره معرفی کرد.

game engines

در طول زمان، موتورهای بازی‌ سازی پیشرفت‌های چشمگیری کردند. از رندرینگ گرافیک سه‌بعدی واقعی گرفته تا اضافه‌شدن قابلیت‌هایی مثل فیزیک پیشرفته و هوش مصنوعی، موتورهای مدرن واقعاً شگفت‌انگیز هستند. تصور کنید در دهه‌ی ۹۰، بازی‌های سه‌بعدی مثل Quake تازه وارد صحنه شدند و مردم را شگفت‌زده کردند، اما حالا موتورهایی مثل Unreal Engine 5 می‌توانند دنیایی بسازند که به سختی می‌شود آن را از واقعیت تشخیص داد. حتی موتورهایی مثل Unity یا Godot به توسعه‌دهندگان مستقل کمک کرده‌اند تا بدون نیاز به تیم‌های بزرگ، بازی‌های خلاقانه‌ای خلق کنند.

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

محیط موتور بازی سازی

موتور بازی‌ سازی از چه اجزایی تشکیل شده است؟

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

رندرینگ (Rendering): این بخش همانند یک دوربین فیلم‌برداری در دنیای بازی عمل می‌کند. تمام آنچه بر روی صفحه‌نمایش می‌بینید، از شخصیت‌ها و محیط‌ها گرفته تا نورپردازی و سایه‌ها، توسط سیستم رندرینگ موتور بازی نمایش داده می‌شود. موتورهای پیشرفته‌ای مانند Unreal Engine از فناوری‌هایی نظیر Ray Tracing استفاده می‌کنند که نورپردازی را به‌صورت دقیق و مشابه دنیای واقعی شبیه‌سازی می‌نماید. این فناوری همان عاملی است که باعث می‌شود بازی‌هایی مانند Cyberpunk 2077 یا Hogwarts Legacy ظاهری سینمایی و چشم‌نواز داشته باشند. به‌طور خلاصه، سیستم رندرینگ مسئولیت زیبایی بصری بازی را بر عهده دارد.

رندرینگ

فیزیک (Physics Engine): سیستم فیزیک یکی از حیاتی‌ترین اجزای یک موتور بازی‌ سازی است که بدون آن، بازی حالتی غیرواقعی و مصنوعی پیدا می‌کند. برای مثال، تصور کنید که شخصیتی از ارتفاعی بلند به پایین بپرد اما هیچ تأثیری از جاذبه در بازی دیده نشود، یا خودروها با یکدیگر برخورد کنند ولی هیچ اتفاقی نیفتد. موتور فیزیک قوانین طبیعت را در بازی شبیه‌سازی می‌کند. از سقوط اجسام و برخوردها گرفته تا شبیه‌سازی مایعات و حرکت پارچه، همگی وظایف این بخش هستند. موتورهایی نظیر Havok یا سیستم Chaos در Unreal Engine از برجسته‌ترین نمونه‌ها در این حوزه هستند.

فیزیک موتور بازی‌سازی

سیستم صوتی : بازی بدون صدا همانند فیلمی بدون دیالوگ است؛ بی‌روح و کسل‌کننده. موتورهای بازی‌ سازی یک سیستم صوتی قدرتمند دارند که وظیفه مدیریت صداهای محیط، دیالوگ‌ها، موسیقی پس‌زمینه و افکت‌های صوتی را بر عهده دارد. برای مثال، صدای قدم‌های کاراکتر بر اساس سطح زمینی که روی آن حرکت می‌کند تغییر می‌کند، یا وقتی وارد غاری می‌شوید، صدای پژواک را می‌شنوید. ابزارهایی نظیر FMOD و Wwise در این زمینه شناخته‌شده و کاربردی هستند و به بازی‌ها حس زنده بودن می‌بخشند.

سیستم صوتی موتور بازی‌سازی

هوش مصنوعی (AI): بخش هوش مصنوعی به‌نوعی مغز شخصیت‌های غیرقابل‌بازی (NPCها) محسوب می‌شود. اگر دشمنان در بازی تنها ایستاده باشند و هیچ واکنشی نشان ندهند، تجربه بازی بسیار خسته‌کننده خواهد شد. هوش مصنوعی باعث می‌شود شخصیت‌های غیرقابل‌بازی رفتارهای واقعی داشته باشند؛ مثلاً به دنبال شما بگردند، واکنش نشان دهند یا حتی استراتژی‌های پیچیده‌ای به کار ببرند. بازی‌هایی مانند The Last of Us یا Metal Gear Solid V از هوش مصنوعی پیشرفته‌ای بهره می‌برند که تعامل با این شخصیت‌ها را شبیه به واقعیت می‌کند.

 

 

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

اسکریپت نویسی: این بخش همان چیزی است که روح را به بازی می‌بخشد. اسکریپت‌نویسی قسمتی از موتور بازی‌ سازی است که به توسعه‌دهندگان امکان می‌دهد با استفاده از زبان‌های برنامه‌نویسی، منطق بازی را طراحی کنند. برای مثال، تعیین می‌کند که با فشار دادن یک دکمه، درب باز شود یا شکست دادن یک دشمن منجر به دریافت پاداش شود. زبان‌هایی مانند C# در Unity یا Blueprint در Unreal Engine، اسکریپت‌نویسی را ساده‌تر کرده‌اند و حتی افراد مبتدی نیز می‌توانند از آن بهره‌مند شوند.

اسکریپت نویسی

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

مدیریت منابع

پشتیبانی از چند پلتفرم: یکی از ویژگی‌های برجسته موتورهای مدرن این است که امکان خروجی گرفتن بازی برای پلتفرم‌های مختلف را فراهم می‌کنند. به‌عنوان مثال، می‌توانید بازی‌ای طراحی کنید که روی رایانه شخصی، کنسول و حتی گوشی‌های هوشمند اجرا شود. Unity و Unreal Engine در این زمینه پیشرو هستند و فرآیند انتشار بازی برای پلتفرم‌های مختلف را بسیار ساده کرده‌اند.

چند پلتفرم

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

موتور بازی‌ سازی چطور کار می‌کند؟

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

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

اسکریپت نویسی

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

چگونگی کارکرد موتور بازی‌سازی

موتور های بازی سازی استودیو های معروف

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

RE Engine (کپکام): نام این موتور کپکام را در سال‌های اخیر زیاد شنیده‌ایم. RE Engine یک موتور بازی‌ سازی است که با هدف ساخت بازی‌های ترسناک و هیجان‌انگیز توسعه داده شده. قدرت این موتور را در محصولاتی مانند Resident Evil 2 Remake یا Devil May Cry 5 می‌توان مشاهده کرد. RE Engine قدرت این را دارد که شبیه‌سازی‌های فیزیکی دقیق و محیط‌های واقعی را به‌طور زنده پردازش کند، از نورپردازی‌های سینمایی گرفته تا مدل‌های شخصیت که مثل آدم‌های واقعی حرکت می‌کنند.

re engine

RAGE (راک استار): تبحر راک استار در چیست؟ آفرین! در ساخت بازی‌های جهان باز که به این زودی‌ها نمی‌توان همه‌جای آن را کشف کرد! به خاطر این موتور است که بازی‌های Grand Theft Auto و Red Dead Redemption در سطح دیگری از کیفیت قرار دارند. این موتور طوری طراحی شده که بتواند دنیای باز (open world) را به‌طور خیلی نرم و روان شبیه‌سازی کند. هزاران NPC، ماشین، و موجودات دیگر در یک دنیای وسیع که هرکدام رفتار خاص خودشان را دارند، همه به‌صورت همزمان و بدون هیچ تأخیری پردازش می‌شوند. با RAGE، راک‌استار توانسته محیط‌های بزرگ و پرجزئیاتی بسازد که حس زندگی در دنیای بازی را به شکلی بی‌نظیر به گیمر منتقل می‌کند.

rage

CryEngine (کرای‌تک): موتور CryEngine توسط شرکت کرای‌تک توسعه یافته است و قادر است گرافیک‌های خیره‌کننده و محیط‌های طبیعی را در بازی‌ها شبیه‌سازی کند. زمانی که بازی‌هایی مانند Crysis را تجربه می‌کنید، به‌وضوح متوجه می‌شوید که این موتور چه قدرتی دارد. گرافیک این موتور حتی قادر است جزئیات دنیای طبیعی را به‌طور شگفت‌انگیز نمایش دهد و رندر کردن محیط‌های طبیعی همچون جنگل‌ها، برف، باران و دیگر عناصر طبیعی را به بهترین شکل ممکن انجام دهد.

cryengine

Naughty Dog Game Engine (ناتی داگ): نقطه تمایز ناتی داگ با دیگر کمپانی‌ها این است که داستان‌سرایی در اکثر بازی‌های این کمپانی حرف اول را می‌زند. این موتور قادر است انیمیشن‌های پیچیده و جزئیات فراوانی از حرکات شخصیت‌ها، واکنش‌های صورت و رفتارهای هوش مصنوعی را به شکلی طبیعی و واقعی به نمایش بگذارد. در این موتور، هر جزئیات از جمله حرکت‌ها و واکنش‌ها با دقت شبیه‌سازی می‌شود تا تجربه‌ای سینمایی و غنی برای گیمر به ارمغان آورد. بازی‌های Uncharted و The Last of Us بهترین خروجی‌های این موتور هستند.

موتور بازی‌سازی ناتی داگ

Frostbite (الکترونیک آرتس): موتور Frostbite که توسط شرکت الکترونیک آرتس (EA) توسعه یافته است، در بازی‌هایی مانند Battlefield و FIFA به کار گرفته می‌شود. این موتور توانایی خلق محیط‌های تخریب‌پذیر و شبیه‌سازی دقیق تعاملات دنیای جنگی و ورزشی را داراست. Frostbite می‌تواند تغییرات در محیط‌ها را به سرعت و با جزئیات بسیار بالا پردازش کند، به‌طوری که گیمر می‌تواند تجربه‌ای واقع‌گرایانه از تخریب و تعاملات محیطی داشته باشد.

 

 

frostbite engine

Unreal Engine (اپیک گیمز): معروف‌ترین موتور بازی‌ سازی حال حاضر جهان که به بسیاری از علاقه‌مندان کمک کرده به بازی‌ سازی روی بیاورند. Unreal Engine یکی از پرکاربردترین موتورهای بازی‌ سازی است که توسط اپیک گیمز طراحی شده است. این موتور در بازی‌هایی همچون Fortnite و Gears of War مورد استفاده قرار گرفته است و از قدرت زیادی برای خلق گرافیک‌های سینمایی، شبیه‌سازی‌های فیزیکی دقیق و اجرای بازی‌ها روی پلتفرم‌های مختلف برخوردار است. Unreal Engine با ابزارهایی قوی و قابلیت‌های متنوعی که دارد، هم برای بازی‌سازهای بزرگ و هم برای توسعه‌دهندگان مستقل مناسب است.

 

 

unreal engine

Unity (یونیتی): در نهایت، Unity یکی از محبوب‌ترین موتورهای بازی‌ سازی است که بیشتر برای ساخت بازی‌های موبایل و بازی‌های مستقل به کار می‌رود. این موتور به دلیل دسترسی آسان و قابلیت‌های فراوانی که برای ساخت بازی‌های دوبعدی و سه‌بعدی فراهم می‌آورد، به یکی از پرطرفدارترین ابزارها در بین سازندگان بازی تبدیل شده است. از ویژگی‌های برجسته این موتور، توانایی اجرا بر روی پلتفرم‌های مختلف مانند موبایل، PC، کنسول‌ها و حتی VR است.

unity

حرف آخر :

موتورهای بازی‌ سازی ابزارهای پیچیده و قدرتمندی هستند که فرآیند خلق بازی‌های ویدیویی را ساده‌تر و سریع‌تر می‌کنند. این موتورها از مجموعه‌ای از ابزارها، فریم‌ورک‌ها و فناوری‌های پیشرفته تشکیل شده‌اند که به بازی‌سازان امکان می‌دهند گرافیک‌های خیره‌کننده، فیزیک واقع‌گرایانه، هوش مصنوعی پیچیده و تعاملات محیطی جذاب ایجاد کنند. موتورهایی چون Unreal Engine و Unity محبوب‌ترین و در دسترس‌ترین گزینه‌ها برای توسعه‌دهندگان هستند، در حالی که موتورهای اختصاصی مانند RE Engine و Frostbite ویژگی‌های خاص خود را برای بازی‌هایی با تمرکز خاص مانند گرافیک سینمایی یا تخریب‌پذیری محیطی دارند. به طور کلی، موتورهای بازی‌ سازی نقش مهمی در پیشرفت صنعت بازی‌ها ایفا می‌کنند و باعث می‌شوند بازی‌ها هر روز جذاب‌تر و واقع‌گرایانه‌تر از گذشته به نظر برسند.

تیم تحریریه لینکو

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

مطالب پیشنهادی

+ هیچ نظری وجود ندارد

خودتان را اضافه کنید