یونیتی یا آنریل (بخش دوم)
فهرست مطالب
یکی از پر بازدید ترین و محبوب ترین مقالات ماناتاز، مقاله ی «یونیتی یا آنریل» است.
همچنین در کانال یوتیوب ماناتاز نیز ویدیوی این مقاله نزدیک به ۳۰۰۰ بازدید را دریافت کرد.
به همین علت ما تصمیم گرفتیم بخش دوم این مقاله را نیز بنویسیم و به یک بررسی و مقایسه ی عمیق تر بین آنریل و یونیتی بپردازیم.
یونیتی و آنریل انجین به عنوان دو تا از بهترین موتورهای بازی سازی جهان شناخته می شوند که به علت اهمیت آن ها در بخش دوم این مقاله قصد داریم به عمق جزئیات و تفاوت ها و شباهت های بیشتری از این دو موتور بپردازیم.
برای یک مقایسه ی عمیق تا پایان همراه ما باشید.
(لازم به ذکر است قبل از خواندن این مقاله حتما از بخش اول این مقاله که در بالا به آن لینک داده شده است؛ دیدن نمایید، زیراکه در این مقاله از توضیحات تکراری پرهیز کرده و مواردی را خواهیم گفت که در مقاله ی قبلی به آن پرداخته نشده است.)
یونیتی و آنریل انجین
هر دوی این موتورهای بازی سازی جزوه اولین و بهترین موتورهای بازی سازی جهان می باشند و از طریق دو دکمه ی زیر می توانید به صورت کامل با هر یک از آن ها آشنا شوید.
نبرد دیرینه بین Unreal و Unity مانند انتخاب بین شکلات و وانیل است؛ که انتخاب آن واقعاً به طعم توسعه بازی شما بستگی دارد.
Unreal Engine با گرافیک خیره کننده و موتور رندرینگ فوق العاده ی خود در این طرف میدان و یونیتی با در بر گرفتن بازار بازی های موبایلی و تحول در دنیای جلوه های ویژه ی خود در طرف دیگر.
اما در این مقاله قصد داریم به جدیدترین تحولات مابین این دو موتور اشاره کنیم.
در جدول زیر یک خلاصه ای از مقایسه ی این دو موتور خواهیم داشت که در واقع خلاصه ای از بخش اول مقاله نیز می باشد:
Unity | Unreal engine | |
---|---|---|
کراس پلتفرم | کراس پلتفرم | خروجی |
Unity Technologies | Epic Games | سازنده |
#C | ++C | زبان برنامه نویسی |
Open-source نیست | Open-source | Source Code |
نسخه Basic رایگان است (سیستم حق امتیاز در ژانویه 2024 وارد می شود) | رایگان با سیستم حق امتیاز برای درآمد | هزینه |
65000+ | 16000+ | حجم asset ها در assetstore |
توسعه دهندگان مستقل برای بازی های موبایلی | استودیو های AAA برای بازی های کنسول | حجم عمده ی استفاده کنندگان |
سه بعدی و دو بعدی بدون محدودیت | اکثرا سه بعدی و محدودیت در دو بعدی | ساپورت از نوع گرافیک |
ML-Agents toolkit | Behavior trees | پشتیبانی از AI |
پشتیبانی و ابزارهای محدود تر نسبت به آنریل | پشتیبانی و ابزارهای پیشرفته | پشتیبانی از AR/VR |
بررسی یونیتی به صورت خلاصه
قبل از شروع بررسی به صورت خلاصه می توان گفت یکی از مواردی که اشاره به آن ضروری است؛ آخرین اخباری است مبنی بر اینکه یونیتی با معرفی یک سیستم هزینه ای جدید بحث برانگیز، طیف گسترده ای از انتقادها را متوجه خود کرده است.
زمانی که بازی به بیش از 200,000 دلار درآمد و نصب بیش از 200,000 تا برسد، توسعه دهندگان با پرداخت هزینه 0.20 دلار برای هر دانلود مواجه خواهند شد.
(لازم به ذکر است سقف درآمد در ابتدای کار ۱۰۰.۰۰۰ دلار بود اما پس از مخالفت های شدید توسعه دهندگان، یونیتی آن را به ۲۰۰.۰۰۰ دلار تغییر داد.)
ویژگی های کلیدی
- گردش کار و معماری آسان برای توسعه سریع بازی
- ساخت بازی های با کیفیت بالا و AAA
- Unity Scripting API کنترل دقیقی بر ویژگی های بازی می دهد
- ابزارهای اختصاصی ساخت بازی های دو بعدی یا سه بعدی را آسان می کنند
- خروجی کراس پلتفرم
- asset های آماده استفاده از فروشگاه بزرگ Unity Asset زمان توسعه را کاهش می دهد
- می توانید از پکیج ها و asset های داخلی برای توسعه موتور Unity استفاده کنید
- طیف وسیعی از تنظیمات رندرینگ برای بهینه سازی عملکرد بازی
بهترین بازی های ساخته شده با این موتور
- Pokémon Go
- Call of Duty: Mobile
- Cuphead
- Monument Valley
- Ori and the Blind Forest/Ori and the Will of the Wisps
- Fall Guys
- Hollow Knight
مزایا | معایب |
---|---|
خروجی بهینه برای موبایل (با پوشش بیش از ۷۰ درصد سهم بازار بازی های موبایلی) | کیفیت گرافیکی پایین تر نسبت به آنریل انجین |
استفاده از #C و توسعه سریع | محبوبیت کمتر در بین استودیوهای AAA برای ساخت بازی های بزرگ |
جامعه پشتیبانی گسترده | اوپن سورس نبودن |
رایگان برای پروژه هایی که کمتر از 200000 دلار در سال درآمد دارند | ویژگی های آنلاین سازی و مولتی پلیر پیشرفته فقط با بارگیری فریمورک ها در دسترس هستند |
بررسی آنریل به صورت خلاصه
از زمان ورود، Unreal Engine ثابت کرده است که یک انتخاب قوی برای ایجاد گرافیک با کیفیت بالا و جلوههای فیزیکی منحصر به فرد است، که منجر به شهرت آن شد.
همچنین آنریل انجین ۵ و نسخه های بعد از آن با ظهور خود تحولاتی را رقم زدند که قدرت این موتور را بیش از گذشته به رخ کشید؛ تحولاتی از جمله: متاهیومن، لومین، نورها و …
ویژگی های کلیدی
سیستم اسکریپت بصری Blueprint برای توسعه دهندگانی که قصد بازی سازی بدون کدنویسی دارند (که این سیستم به مراتب قوی تر از سیستم visual scripting یونیتی است.)
سیستم MetaSounds برای ایجاد جلوه های صوتی فوق العاده
ادغام پایپ لاین برای برنامه نویسی FBX، USD و Python
قدرت گرافیکی فوق العاده در خروجی
موتور نانیت برای رندرینگ، نورپردازی و متریال
شبیه سازی و vfx فوق العاده قدرتمند
دسترسی به سورس کد ++C و API
بهترین بازی های ساخته شده با این موتور
- Fortnite
- Star Wars Jedi: Fallen Order
- Hellblade: Senua’s Sacrifice
- Tetris Effect
- Gears 5
مزایا | معایب |
---|---|
خروجی قدرتمند از لحاظ گرافیکی و بصری به همراه رندر سریع تر از یونیتی | مناسب برای بازی های سنگین و گرافیکی و نامناسب برای بازی های سبک |
مناسب برای ساخت بازی های سه بعدی و AAA | استفاده از ++C و در نتیجه برنامه نویسی سخت تر |
مناسب برای انیمیشن و کارهای گرافیکی سه بعدی به غیر از بازی | asset store کوچک تر نسبت به یونیتی |
عملکرد عالی هنگام کار با دارایی ها و محیط های سنگین | پرداخت 5% درآمد در صورتی که محصول توسعه یافته بیش از 1 میلیون دلار در سال درآمد داشته باشد. |
مقایسه بین یونیتی و آنریل
در یکی از منابعی که در حال مطالعه ی آن برای نوشتن این مقاله بودیم، یک نتیجه گیری خیلی خلاصه و در عین حال مفید و جامعی برای انتخاب بین این دو موتور ارائه داده بود که ما دقیقا تصویر آن را در زیر برای شما قرار داده ایم.
در این مقایسه به صورت ساده و در یک جمله می گوید برای ساخت بازی موبایلی انتخاب اول یونیتی و برای ساخت بازی AAA و کنسول انتخاب اول آنریل است. (برای سایر پلتفرم ها نیز متناسب با ابعاد آن می توان از این نتیجه گیری استفاده کرد.)
پس این یک نتیجه گیری که در همین ابتدا و بدون سردرگم کردن شما کاربران گرامی انجام دادیم.
اما اگر می خواهید پارامترهای بیشتری را مورد سنجش قرار دهید بگذارید وارد جزئیات بیشتری شده و تنها به این مقایسه بسنده نکنیم.
از لحاظ آمار کلی برای کل بازی های ساخته شده برای پلتفرم های مختلف، مشاهده می کنیم که هر دوی این موتورها در حال حاضر پیشرو در صنعت بازی سازی هستند؛ یونیتی دارای 48 درصد از سهم بازار و آنریل دارای 13 درصد از سهم کل بازار می باشد. (البته این آمار به صورت تقریبی است.)
اما قصد بررسی بُعدهایی را داریم که در مقاله ی قبلی یا به آن اشاره نشده است و یا توضیحات کمتری برای آن داده شده.
سادگی
در حالی که Unity در دسترستر است (موتوری برای مبتدیان) و حتی بلوپرینت آنریل آن را از نظر تلاش برای کدنویسی نیز آسان تر میکند.
با این حال، نمی توان انکار کرد که Unreal پیچیده تر است؛ زیراکه ++C زبان ساده ای نیست.
امکانات
به طور کلی آنریل انجین را می توان یک انجین کامل تری نسبت به یونیتی دانست.
این به این خاطر است که مخاطبان یونیتی تنها بازی سازان و دولوپرها هستند.
اما در آنریل انجین، آرتیست ها و انیماتورهای بسیاری وجود دارد؛ افرادی که تنها برای استفاده های معماری، مدل سازی، طراحی کارکتر، انیمیشن سازی و یا جلوه های ویژه از آنریل انجین استفاده می کنند.
VFX
هر دو موتور VFX با کیفیت بسیار بالایی تولید می کنند، اما جلوه های بصری که UE می تواند تولید می کند، آن را کمی بالاتر از Unity قرار می دهد.
UE میتواند تجسمهای فوتورئالیستی تولید کند که واقعاً گیمرها را در دنیایی که برای آنها ساخته شده است غوطهور کند.
رندرینگ
رندر میتواند توسعه بازیهای پس از پردازش را سرعت بخشد، بنابراین هنگام انتخاب یک موتور بازی باید به آن توجه کرد.
در این مورد، آنریل از رندر سریعتر از Unity پشتیبانی می کند.
انیمیشن ها
امکان ایجاد بازی هایی با انیمیشن های قوی هم در Unity و هم در UE وجود دارد.
اما تفاوت اصلی این است که ابزارهای یونیتی عمق کمتری دارند و بیشتر برای استفاده توسعه دهندگان بازی هستند.
اما همانطور که در مورد قبلی به آن اشاره کردیم آنریل برای انیماتورها نیاز یک انتخاب مناسب است و این به این معناست که آنریل در مبحث انیمیشن سازی، ابزارهای کامل تر و حرفه ای تری را ارائه می دهد.
بهینه سازی در فضای نرم افزار
مقایسه عملکرد موتورها سخت است.
شما باید متغیرهای زیادی را در نظر بگیرید: کیفیت تکسچرها، تعداد اشیاء در بازی ها، اندازه یک جهان و …
همه این موارد به توسعه دهندگان بستگی دارد.
معیارهای ++C در مقابل #C در اینجا به ما کمک نمی کنند، زیرا هر دو موتور SDK خود را دارند.
به عنوان مثال، Epic به شدت توسعه دهندگان را تشویق می کند تا از memory management framework آن استفاده کنند.
با این حال، Unreal Engine در فضای نرم افزاری عملکرد بهینه تری را از خود نشان می دهد؛ با رشد دنیای بازی، این بهینه سازی قابل مشاهده می شود.
Unity به طور پیوسته و متناسب زمان اجرای خود را افزایش می دهد، در حالی که Unreal Engine این کار را نمی کند.
برتری عملکرد آن با پیچیدگی صحنه بازی بزرگتر آشکار می شود.
Incredibuld با Unreal Engine ادغام می شود تا سرعت ساخت کد و کامپایل شیدر را به میزان قابل توجهی افزایش دهد.
Epic از آن به صورت داخلی در پروژه های خود استفاده می کند؛ چنین ادغامی با یونیتی وجود ندارد، بنابراین کمی به نفع آنریل است.
بهینگی خروجی
این مورد نیز به پارامترهای زیادی بستگی دارد اما طی یک نتیجه گیری کلی می توان گفت از لحاظ حجمی و منابع درگیر کننده، یونیتی، بازی با حجم بهینه تری را ارائه می دهد؛ و این یکی از دلایلی است که آن را گزینه ی بهتری برای بازی های موبایلی می دانند.
فیزیک و شبیه سازی
Unreal Engine دارای یک موتور فیزیک پیشرفته است که امکان شبیه سازی و تعاملات واقع گرایانه را فراهم می کند.
از فیزیک پیچیده ragdoll گرفته تا شبیهسازی وسایل نقلیه، Unreal Engine طیف گستردهای از ابزارهای مبتنی بر فیزیک را برای ایجاد تجربههای گیمپلی فراگیر در اختیار توسعهدهندگان قرار میدهد.
با ویژگیهایی مانند تخریب مبتنی بر فیزیک و شبیهسازی سیال، Unreal Engine مرزهای آنچه از نظر فیزیک ممکن است را تغییر میدهد.
Unity همچنین موتور فیزیک و قابلیت های شبیه سازی را ارائه می دهد که برای اکثر پروژه های بازی مناسب است.
اما خب می توان گفت موتور فیزیکی یونیتی به اندازه آنریل قوی نیست، اما همچنان ابزارهای لازم را برای ایجاد مکانیک های گیم پلی جذاب در اختیار توسعه دهندگان قرار می دهد.
استفاده از موتور فیزیک یونیتی آسان است و به خوبی با سایر جنبههای آن ادغام میشود و امکان ادغام یکپارچه فیزیک را در بازی شما فراهم میکند.
هر دو موتور در فیزیک و شبیه سازی عالی هستند، اما Unreal Engine ویژگی های پیشرفته تری ارائه می دهد در حالیکه Unity یک موتور فیزیکی کاربر پسند و همه کاره را ارائه می دهد.
رابط کاربری
Unreal Engine’s editor به دلیل استحکام و ویژگی های قدرتمند خود شناخته شده است.
پس از راه اندازی انجین، کاربران با یک رابط کاربری بصری خیره کننده مواجه می شوند که در نگاه اول می تواند غافلگیر کننده باشد.
با این حال، هنگامی که به چیدمان آن عادت کردید، متوجه خواهید شد که ابزارها و گزینه های زیادی برای ایجاد بازی های خیره کننده ارائه می دهد.
در واقع اگر تازه کار باشید با ورود به آنریل حسابی ترسیده و مضطرب خواهید شد.
Unity’s editor رویکرد ساده تری را اتخاذ می کند و آن را برای مبتدیان ایده آل می کند.
پس از راه اندازی Unity، با یک رابط کاربری تمیز و بصری مواجه خواهید شد که بر سادگی و سهولت استفاده تمرکز دارد.
ویرایشگر به چندین تب تقسیم می شود که هر کدام جنبه خاصی از توسعه بازی را ارائه می دهد.
Unity’s editor طوری طراحی شده است که برای مبتدیان مناسب باشد و به شما این امکان را می دهد که به سرعت اصول توسعه بازی را درک کنید.
البته این مورد را در نظر داشته باشید که پیچیدگی رابط کاربری آنریل در برخی موارد به علت امکانات و ابزارهای بیشتر است اما به صورت کلی کاربران رابط کاربری یونیتی را تعاملی تر می دانند.
یادگیری
از بعد یادگیری می توان یونیتی را ساده تر از آنریل دانست.
زیراکه آنریل طیف گسترده تر و در عین حال پیچیده تر از ابزارها و امکانات را ارائه می دهد و همچنین از زبان ++C استفاده می کند که خود این موضوع به پیچیدگی آن می افزاید.
البته اگر شما قصد انجام بخش های گرافیکی، انیمیشن ها و جلوه های ویژه ی یک بازی را نداشته باشید؛ نیازی به یادگیری کامل آنریل نبوده و این کمی کار را راحت می کند.
اما طبق نظرات کاربران یونیتی همیشه موتور ساده تر و قابل فهم تری برای یادگیری بوده است و توسعه دهندگان می توانستند با آن راحت تر بازی توسعه دهند.
جمع بندی
جمع بندی این مقاله کاملا مشخص است و در قسمت اول آن نیز توضیحات کامل در اینباره گفته شد.
به طور قطع نمی توان گفت کدام موتور بازی سازی بهتر است؛ زیراکه انتخاب هر یک از آن ها وابسته به نیاز و بازی شما می باشد.
اما یکی از مهم ترین پارامترها ابعاد بازی است؛ که در ابتدای مقایسه نیز گفته شد؛ اگر بازی AAA باشد گزینه مناسب آنریل است و اگر موبایلی باشد گزینه مناسب یونیتی.
هر چند که این مورد نیز یک قائده کلی نیست و بسیاری از بازی های موبایلی نیز هستند که با آنریل ساخته شده اند؛ به عنوان مثال بازی روگ رایدر و شوتر ماناتاز، دو بازی ای هستند که با آنریل انجین ساخته شده اند و برعکس آن نیز وجود دارد؛ بازی های AAA که با یونیتی ساخته شده اند.
پس به مقایسه ها و نقاط قوت هر کدام از این دو انجین باید توجه کرد و دریافت که با توجه به پروژه مورد نظر کدام یک از این پارامترها ارجعیت پیدا خواهد کرد.
مهرشاد شادان مهر
مدرس سئو ، طراح سایت ، انیماتور، سناریو نویس بازی
زمانیکه توقعات خود را از دیگران به حداقل برسانید و به طور کامل به خود متکی باشید؛ زندگی برای شما خیلی ساده تر و قابل پیش بینی تر خواهد بود.