یونیتی کلمهای است که اگر از علاقهمندان به دنیای بازی های ویدیویی باشید، قطعا به گوشتان خورده است. احتمالا این سوال برای شما هم پیش آمده باشد که موتور بازی سازی یونیتی چیست و چرا باید آن را بشناسید؟ بسیاری از افرادی که قصد ساخت اولین بازی ویدیویی خود را دارند برای بازی سازی به سراغ این موتور بازی سازی میروند، زیرا امکانات متنوع آن، بازی سازی را برای علاقهمندان آسان کرده است. اگر شما علاقهمند به بازیسازی هستید، یادگیری این موتور بازیسازی را به شما توصیه میکنیم. اما قبل از یادگیری، باید با اجزای مختلف این موتور بازی سازی، محسن و معایب آن آشنا شوید. در ادامه این مقاله قصد داریم این موارد را بررسی کنیم. در انتها نیز تعدادی از بهترین بازیهایی که با استفاده از این موتور بازی سازی ساخته شدهاند را معرفی میکنیم. پس در ادامه با ما همراه باشید.
- 1 موتور بازی سازی یونیتی چیست؟
- 2 طرز کار موتور بازی سازی یونیتی چگونه است؟
- 3 یونیتی از چه زبانهای برنامهنویسی پشتیبانی میکند؟
- 4 عملکرد یونیتی در مقایسه با موتورهای بازی سازی دیگر
- 5 یونیتی از چه پلتفرمهایی پشتیبانی میکند؟
- 6 کاربردهای دیگر موتور بازی سازی یونیتی
- 7 اجزای نرم افزار یونیتی چیست؟
- 8 بهترین بازیهایی که توسط یونیتی ساخته شدهاند
- 9 جمعبندی
موتور بازی سازی یونیتی چیست؟
موتور بازی سازی یونیتی (به انگلیسی: Unity) یکی از معروفترین موتورهای بازی سازی جهان است که در سال 2005 توسط کمپانی Unity Techonlogies توسعه یافت و منتشر شد. تعدادی از محبوبترین بازیهای دنیا مانند Angry Birds و Temple Run با آن ساخته شدهاند و توسط صدها هزار نفر از توسعهدهندگان بازی های ویدیویی استفاده میشود. این نرمافزار در عین سهولت استفاده بسیار قدرتمند است و بیشتر امکانات را به صورت رایگان در اختیار کاربران خود قرار میدهد. یکی از ویژگیهایی که موتور بازی سازی یونیتی را به انتخاب اول بسیاری از توسعهدهندگان تبدیل کرده است، قابلیت اجرای بازی های آن روی پلتفرم های مختلف است. کدها و اسکریپتهای آمادهی این نرمافزار، بازی سازی را برای بازی سازان مستقل و در بستر بازیهای موبایلی بسیار آسان کرده است.
قبل از ادامه مطالب، مقاله زیر را در رابطه با بازی سازی مستقل و فوت و فنهای آن بخوانید.
طرز کار موتور بازی سازی یونیتی چگونه است؟
نرم افزار یونیتی امکان ساخت بازیهای دو بعدی و سه بعدی را در اختیار کاربران خود قرار میدهد. این موتور بازیسازی همچنین ویژگیهایی از قبیل ساخت فیزیک بازی، طرز حرکت اشیا، تنظیم زاویه نور، سایهزنی و… که برای ساخت یک بازی حیاتی هستند را دارا است. این نرمافزار یک Asset Store یا “فروشگاه دارایی” دارد که توسعهدهندگان میتوانند اشیا، اصوات و افکتهایی که خلق کردهاند را در این فروشگاه با بقیه توسعهدهندگان به اشتراک بگذارند و اگر خودشان هم به چیزی نیاز پیدا کردند آن را از این فروشگاه برای بازی خود تهیه کنند. این داراییها میتوانند انیمیشن، افکت، مدلهای مختلف یا انواع صداها باشند. تمام این موارد به این معنی است که بازی ساز میتواند در وقت و هزینه صرفهجویی کرده و تمرکز اصلی خود را روی ایدهپردازی و خلق تجربهای جذاب برای بازیکنان بگذارد.
قبل از ساخت بازی خود در موتور بازی سازی باید پیشنیازهای بازی سازی را داشته باشید. برای اطلاع از آنها مقاله زیر را مطالعه کنید.
یونیتی از چه زبانهای برنامهنویسی پشتیبانی میکند؟
زبان برنامهنویسی که این نرم افزار ار آن پشتیبانی میکند #C (سی شارپ) است. شما میتوانید با داشتن دانشی ابتدایی در مورد این زبان کارهای زیاد و متنوعی در یونیتی انجام دهید. البته که زیاد کردن این دانش و مسلط شدن به این زبان درهای جدیدی از امکانات این موتور بازی سازی قدرتمند را به روی شما باز میکند. خوشبختانه زبان سی شارپ یکی از سادهترین زبانها برای یادگیری است و شما با کمی تلاش و حوصله میتوانید تا حد خوبی به آن مسلط شوید. همچنین زبان سی شارپ یکی از زبانهایی است که در صنعت بازی های ویدیویی بسیار کاربرد دارد در نتیجه یاد گرفتن آن برای یک بازی ساز خالی از لطف نیست.
برای اطلاع از منابع یادگیری برنامهنویسی در ایران مقاله زیر را به شما پیشنهاد میکنیم.
عملکرد یونیتی در مقایسه با موتورهای بازی سازی دیگر
مسلم است که موتورهای بازی سازی بزرگ دیگری در دسترس توسعهدهندگان و بازی سازان قرار دارد که همه آنها از رقبای یونیتی محسوب میشوند. موتور بازی سازی آنریل (به انگلیسی: Unreal Engine) و موتور بازی سازی کرای انجین (به انگلیسی: Cryengine) تعدادی از این رقبا هستند. پس چرا باید این نرمافزار را انتخاب کنید؟
با اینکه این نرمافزار در گذشته فقط قابلیت ساخت بازی های سه بعدی را دارا بود، از چند سال پیش امکان ساخت بازی های دو بعدی را نیز اضافه کردهاست. گرافیک بازیهای ساخته شده با یونیتی از کیفیت قابل قبولی برخوردار هستند و به همین دلیل، بیشترین بازی های گوگل پلی با این موتور ساخته شدهاند. همانطور که پیشتر توضیح دادیم به دلیل قابلیت اجرایی روی پلتفرمهای مختلف، بازی سازان این امکان را دارند که بازی خود را برای گوشیهای اپل، ویندوز و حتی انواع کنسولهای بازی ارائه کنند تا به مخاطبان و بازیکنان بیشتری دسترسی داشته باشند.
با این حال این موتور بازی سازی همچنان در مقایسه با آنریل و کرای از نظر کیفیت گرافیکی پایینتر است اما در به روزرسانیهای اخیر قدمهایی در راستای بهبود آن برداشته شدهاست. به همین دلیل اکثر شرکتهای بازی سازی بزرگ یا به اصطلاح AAA که برای گرافیک بازی ارزشی بالایی قائل هستند، از این موتور بازی سازی استفاده نمیکنند و به سراغ رقبای آن میروند.
یونیتی از چه پلتفرمهایی پشتیبانی میکند؟
موتور بازی سازی یونیتی در سیستم عاملهای ویندوز و مک و لینوکس قابلیت اجرایی دارد و همچنین میتواند بازیهایی بسازد که تقریبا 20 پلتفرم از آنها پشتیبانی میکنند. این پلتفرمها شامل سیستم عاملهای مختلف موبایل، دسکتاپ، کنسول و واقعیت مجازی میشوند.
پلتفرمهای موبایل: اندروید، آی او اس (IOS)، اندروید تی وی (Android TV)، تی وی او اس (tvOS)
پلتفرمهای دسکتاپ: ویندوز، مک، لینوکس
پلتفرمهای کنسول: پلی استیشن (PS4, PS5)، اکس باکس (Xbox One, Xbox Series X/S)، نینتندو سوییچ (Nintendo Switch)، استادیا (Stadia)
پلتفرمهای واقعیت مجازی: پلی استیشن وی آر (PlayStation VR)، اوکولوس (Oculus)، ای آر کور گوگل (Google’s ARCore)، ای آر کیت اپل (Apple’s ARKit)، واقعیت مختلط ویندوز (Windows Mixed Reality)، هولو لنز (HoloLens)، مجیک لیپ (Magic Leap)، استیم وی آر (Steam VR)، گوگل کاردبورد (Google Cardboard)
کاربردهای دیگر موتور بازی سازی یونیتی
با اینکه اکثر افراد به این نرمافزار فقط به عنوان ابزاری برای ساخت بازی نگاه میکنند، اما این موتور قدرتمند در قسمتها و صنایع دیگری نیز موارد استفاده مختلفی دارد. از آنجایی که پلتفرمهای مختلف را پشتیبانی میکند افراد میتوانند از قابلیتهای آن در فعالیتهایی مانند معماری، ساخت انیمیشن و شبیهسازی استفاده کنند.
کاربرد در معماری
موتورهای بازی سازی قابلیت پردازش مقدار زیادی از اطلاعات جغرافیایی را دارند و میتوانند نورپردازیهای واقعگرایانه اشیا را طراحی کنند. به همین دلیل این نرمافزار برای معماران بسیار کارآمد است. آنها میتوانند با استفاده از یونیتی میتوانند از انواع ساختمان ها مدلهای مجازی بسازند که جزئیات زیادی دارند. معماران همچنین میتوانند اطلاعات نرمافزارهایی مانند Sketchup یا Revit را در این موتور بازی سازی بارگذاری کرده و از قابلیتهای گرافیکی مختلف آن استفاده کنند.
کاربرد در انیمیشن
موتور های بازی سازی در حال تبدیل شدن به یک گزینهای جذاب و کارآمد برای سازندگان فیلم و انیمیشن هستند. یکی از امکاناتی که این نرمافزار به کاربران خود ارائه میکند امکان پردازش گرافیکهای انیمیشن یا فیلم به صورت زنده است. این قابلیت میتواند برای انیمیشین سازها به خصوص اگر در فکر انتشار آن در پلتفرمهای واقعیت مجازی هستند بسیار جذاب و کاربردی باشد.
کاربرد در شبیهسازی
امروزه دیگر تنها هدف بازی های ویدیویی سرگرمی نیست. آنها میتوانند در صنایع مهمی مانند صنایع پزشکی و حتی ارتش کاربرد فراوانی داشته باشند. برای مثال Clinispace Virtual Sim Center یک بازی مخصوص پزشکان و کادر درمانی است که موقعیتهای واقعی را برای آنها شبیهسازی میکند. ساخت این نوع بازیها در یونیتی به سادگی امکانپذیر است.
اجزای نرم افزار یونیتی چیست؟
وقتی برای اولین بار پنجره این نرمافزار را باز میکنید، تعداد زیاد آپشنها و اجزای آن میتواند سردرگمکننده باشد. اما نگران نباشید. کار کردن با این موتور از آن چیزی که فکر میکنید سادهتر است. کافی است با پنجرههای مختلف آن و امکاناتی که هرکدام در اختیار شما قرار میدهند آشنا شوید.
سلسله مراتب یا Hierarchy
در قسمت بالا و سمت چپ پنجره نرمافزار، لیست بلندی وجود دارد که به شما اشیای مختلف استفاده شده در یک صحنه را نشان میدهد. در این بخش شما میتوانید به آسانی قسمتهای مختلف یک صحنه را پیدا کرده و تغییرات مورد نظر را روی آنها اعمال کنید.
صحنه یا Scene
بزرگترین پنجره در این نرمافزار، پنجره صحنه است. همانطور که از نامش مشخص است در این بخش شما میتوانید مرحله، منو و جهان بازی خود را ببینید. همچنین این امکان را دارید تا در این قسمت اشیا و عناصر مختلفی که از Asset Store تهیه کردید را بارگذاری کنید.
بازی یا Game
پنجره بازی معمولا پشت پنجره صحنه پنهان است و شما با فشردن دکمهای در قسمت بالا میتوانید به آن دسترسی پیدا کنید. پنجره بازی، بازی شما را همانگونه که برای بازیکن نمایش داده میشود، نشان میدهد. این به آن معنا است که زاویه دید شما همان زاویه دید دوربین است و قابلیت تغییر محل اشیا و عناصر مختلف بازی را ندارید. این پنجره بهترین محل برای تست کردن و به آزمایش گذاشتن بازی و عناصر مختلف آن است.
جستجوگر یا Inspector
پنجره جستجوگر یا Inspector در قسمت راست و بالای فضای این نرمافزار قرار دارد. شما با استفاده از جستجوگر میتوانید ویژگیها و خواص یک شی درون بازی را ویرایش کرده و تغییر بدهید. این تغییرات میتواند در اندازه، جایگاه، بافت یا از مواردی از این دست باشند.
پروژه یا Project
پنجره پروژه در پایینترین قسمت نرم افزار قرار دارد. شما در این قسمت میتوانید فایلهایی که تشکیل دهنده بازی هستند را مشاهده کنید. در بخش پروژه است که شما میتوانید اسکریپتهایی به زبان سی شارپ بنویسید و فایلهای 3 بعدی را بارگذاری کنید که قصد دارید از آنها در بازی خود استفاده کنید.
کنسول یا Console
بخش کنسول جایی است که در آن اطلاعات و دادههای مربوط به نرمافزار مستقیما به شما نمایش داده میشود. اگر ارور یا باگ خاصی در کد و اسکریپتهای شما وجود داشته باشد در این بخش نمایان میشود تا به انجام اصلاحات لازم در آنها بپردازید.
بهترین بازیهایی که توسط یونیتی ساخته شدهاند
از آنجایی که یونیتی یکی از سادهترین موتورهای بازی سازی دنیا است، افراد زیادی در سالهای اخیر با این نرمافزار بازی خود را ساختهاند. اکثر این بازیها 2 بعدی هستند یا از گرافیک سنگینی ندارند. در ادامه لیستی از بهترین بازیهایی که با استفاده از این نرمافزار ساخته شدهاند را تهیه کردیم. از آنجایی که این بازیها که اکثرا توسط استودیوهای مستقل ساخته شدهاند بسیار خلاقانه هستند، تجربه آنها را به شما پیشنهاد میکنیم.
- بازی Hollowknight
- بازی Inside
- بازی Firewatch
- بازی Subnautica
- بازی Arizona Sunshine
- بازی Escape from Tarkov
- بازی Cities Skylines
- بازی Outer Wilds
- بازی Cuphead
- بازی Hearthstone
جمعبندی
موتور بازی سازی یونیتی یکی از پر استفادهترین موتورهای بازی سازی جهان است. امکاناتی که یونیتی در عین سهولت استفاده به کاربران خود ارائه میدهد از ویژگیهای منحصر به فرد این نرمافزار محسوب میشود. همچنین رایگان بودن این موتور قدرتمند، فرآیند بازیسازی را برای بازی سازان مستقل به خصوص بازی سازان ایرانی بسیار بهینه و کم هزینهتر میکند.
امیدواریم با خواندن این مطلب اطلاعات لازم در مورد موتور بازی یونیتی را کسب کرده باشید. کدام یک از ویژگیهای موتور یونیتی برای شما جالب تر بود؟ نظرات خود را با ما در تیم نارین گیمز در میان بگذارید.