درود مهمان گرامی! ثبت نام

ساخت بازی

امتیاز موضوع:
  • 5 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
معرفی Unity 3D
#1
(موتور بازی ساز یونیتی) unity
resim

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



ویرایشگر اسکریپتاین موتور بازی ساز از نرم افزار mono که یک نرم افزار متن باز ویرایشگر زبان های برنامه نویسی است به عنوان ویرایشگر زبان برنامه نویسی استفاده می کند، این نرم افزار بسیار قدرتمند است و کاملا با موتور بازی ساز یونیتی هماهنگ شده است ،مهمترین قابلیت های این نرم افزار در لیست زیر معرفی شده است

پیشنهاد دهنده خودکار کلمات
سیستم دیباگینگ پیشرفته
پشتیبانی کامل از زبان سی شارپ



زبان برنامه نویسییونیتی از جمله موتور های بازی ساز است که می تواند از زبان های برنامه نویسی معروف پشتیانی کند، زبان های برنامه نویسی سی شارپ (C#.net) ، جاوااسکریپت (javascript) و زبان برنامه نویسی بو(BOO) که یک زبان از خانواده زبان برنامه نویسی پایتون(Python) می باشد در یونیتی قابل استفاده هستند. زبان برنامه سی شارپ (C#.net) یکی از قدرتمند ترین زبان های برنامه نویسی است که قابلیت شی گرایی (objectOreinted) و به واسطه این قابلیت ، قابلیت هایی همچون ارث بری را دارد، این قابلیت ها در پروژه های بزرگ برنامه نویسی بسیار سودمند هستند.

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

Blender-.blend
Maya-.mb.ma
Cheetah3d-.jas
3dsMax-.3ds.max
اما فایل های FBX فایل های اصلی مورد استفاده یونیتی است که برای مدل های متحرک استفاده می شود، این فایل توسط بسیاری از نرم افزار های سه بعدی مانند 3dsmax و maya تولید می شود.

همچنین یونیتی قابلیت استفاده از بافت ها(texture) با پسوند jpg،png،dd ، psd و… را دارد.

شیدریونیتی بطور پیش فرض 40 شیدر که بیشترین استفاده در بازی های روز را دارند همراه خود دارد، به عنوان نمونه می توان تعدادی از آنها را نام برد: Depht of field,Soft Particle,Glow,Specular,Bump Mapping,Paralax Mapping,Glass Shader .

اگر این شیدرها برای شما کافی نبود، شما می توانید به راحتی شیدر خود را بنویسید، این کار در یونیتی به وسیله Shaderlab که زبان CGو GLSL را پشتیبانی می کند انجام می شود.

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

فیزیکیونیتی از موتور فیزیکی PhysX محصول شرکت NVIDIA استفاده می کند.

فیزیک در بازی وظیفه شبیه سازی جرم، اصطکاک، مقاومت هوا و سرعت را به عهده دارد، در یونیتی علاوه بر اینها فیزیک وظیفه شبیه سازی، لباس(پارچه)، اجسام نرم،اجسام سخت، اتصالات وشبیه ساز اتومبیل را بر عهده دارد.

اجسام سخت(Rigidbodies)زمانیکه از این قابلیت برای آبجکت ها در بازی استفاده می کنیم، می توانیم به راحتی به جسم نیرو وارد کنیم یا آن را به چرخش در آوریم که این عملیات به وسیله اسکریپت نویسی قابل کنترل هستند.

شبیه ساز اتومبیلیونیتی این امکان را برای کاربران فراهم کرده است تا کاربران بتوانند بسیار ساده و سریع فیزیک مورد نیاز برای شبیه سازی حرکت اتومبیل را ایجاد کنند.

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

رندرینگ و افکت های تصویریونیتی از میان افزار Umbra برای رند کردن تصاویر استفاده می کند، Umbra یک میان افزار برای کنترل رندر است که برای بهبود عملیات رندر از تکنولوژی Occlusion Culling استفاده می کند و با این کار بازدهی بی نظیری در رندر ایجاد می کند، این میان افزار هم اکنون با پلتفرم های Xbox360،PS3 و PCسازگاری دارد. Occlusion Culling یکی از بهترین و معروفترین تکنولوژی های برای بالابردن فریم ریت بازی هاست، در صورتی که بخواهیم به ساده ترین شکل ممکن Occlusion Culling را تعریف کنیم باید بگوییم هر چیزی که در دید دوربین است رندر میشود و تمام اجسامی که در خارج از دید آن هستند مورد پردازش قرار نمیگیرند، همین تعریف ساده نشان میدهد که این تکولوژی باعث بازدهی بسیار بالایی خواهد شد. همچنین یونیتی به طور پیش فرض بسیاری از افکت های مورد نیاز دوربین در بازی را به همراه دارد که استفاده از این افکت ها باعث بالا رفتن کیفیت تصویر در بازی می شود، دوتا از مهمترین آنها عبارتند از:

Screen Space Ambient Occlusion (SSAO) image effect : این اسکریپت زمانی که بر روی دوربین استفاده شود باعث ایجاد سایه ناشی از نزدیکی دو جسم به یکدیگر به صورت realtime می شود که در زیبا تر جلوه دادن بازی بسیار مؤثر است.




Depth of Field Image Effect : ای اسکریپت باعث شبیه سازی لنز دوربین می شود به طوری که منطقه ای از دید دوربین واضح و بقیه مات می باشد، این افکت باعث طبیعی تر شدن دید دوربین می شود.




در زیر لیستی از افکت ها آمده است:

Blur image effect
Bloom and Flares Image Effect
Color Correction Curves image effect
Color Correction image effect
Contrast Enhance image effect
Contrast Stretch image effect
Crease image effect
Depth of Field Image Effect
Luminance Edge Blur image effect
Edge Detection image effect
Edge Detect Normals image effect
Fisheye image effect
Glow image effect
Grayscale image effect
Motion Blur image effect
Noise image effect
Sepia Tone image effect
Screen Space Ambient Occlusion (SSAO) image effect
Sun Shafts image effect
Twirl image effect
Vignetting Image Effect
Vortex image effect
صدا در یونیتییکی از بخش های بسیار مهم در ساخت بازی صدا گذاری می باشد، شرکت های بزگ بازی سازی مبالغ زیادی را صرف ساخت موسیقی بازی می کنند، پس این بخش را باید در بازی ها بسیار جدی گرفت. موتور بازی ساز یونیتی از فرمت های ogg, wav, aif, mp3 پشتیبانی می کند اما برای اینکه صدای بازی بر روی تمامی پلتفرم ها اجرا شود بهتر است از فایل های mp3 در صدا گذاری بازی استفاده شود. Audioclip بخش اصلی صدا گذاری در یونیتی است که از audiosource ها استفاده می کند، یه این نحو که ابتدا یک audiosource برای یک شی در بازی ایجاد می کنیم و بعد با استفاده از audioclip آن را کنترل می کنیم.




using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public AudioClip impact;
void OnCollisionEnter() {
audio.PlayOneShot(impact);
}
}
در مثال، impact یک متغیر از نوع Audioclip می باشد که یک Audisource در آن قرار دارد، این اسکریپت اگر به یک شی نسبت داده شود، آن شی پس از برخورد این صدا را برای یک بار پخش می کند، مثلا اگر این اسکریپت را به فشنگ(تیر) نسبت دهیم، تیر به محض برخورد با یک جسم دیگر این صدا را برای یک بار پخش می کند.

سیستم ذراتاصولا کار سیستم ذرات ایجاد جلوه سه بعدی از تصاویر دو بعدی است، که در یونیتی از سه بخش زیر تشکیل شده است.

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




پلتفرم های خروجییونیتی یک موتور بازی ساز چند پلتفرمه است، یعنی می تواند برای بسیاری از پلتفرم های موجود بازی را ایجاد کند. امروزه تنها حدود 5 درصد کاربران بازی ها را بر روی کامپیوتر های شخصی اجرا می کنند و سهم بسیاری به کنسول های بازی و موبایل و وب می رسد. یونیتی برای پلتفرم های زیر خروجی ایجاد می کند:

windows
Mac
Nintendo Wii
XBOX360
PS3
IOS
Android
Web
تقریبا می توان گفت که یونیتی برای تمامی پلتفرم های موجود خروجی بازی تولید می کند، که از لحاظ تجاری بسیار مهم است به خصوص اجرای بازی بر روی وب و به صورت چند کاربر (network) که باعث جذب کاربران بسیار می شود، تعدادی از بازی های موجود در شبکه اجتماعی facebook توسط موتور بازی ساز یونیتی ایجاد شده است.

از جمله بازی های ساخته شده برای وب توسط یونیتی می توان به بازی های زیر اشاره کرد:

Battlestar Galactica
Fusion Fall
BeGone
Marvel Superhero Squad Online
Paper Moon
به زودی یونیتی خروجی به صورت فلش با پسوند فایل swf را نیز به خروجی های خود اضافه خواهد کرد که این باعث می شود تا هر پلتفرمی که پخش کننده فایل های فلش را دارد بازی های خروجی گرفته شده از یونیتی را اجرا کند و این انقلابی در بازی های سه بعدی خواهد بود.

منابع آموزشییکی از برتری های موتور بازی ساز یونیتی داشتن فایل راهنما ( help) بسیار قدرتمند است، این باعث می شود تا برنامه نویسی با یونیتی بسیار سریع و راحت انجام شود، این فایل راهنما ( help) به همراه یونیتی پس از نصب به صورت آفلاین در دسترس برنامه نویس قرار می گیرد و تقریبا تمامی کلاس ها و متد های مورد استفاده یونیتی را به همراه مثال کاربردی به سه سی شارپ (c#.net) ، جاوااسکریپت (javascript) و بو (BOO) را دارد. همچنین در سایت یونیتی قسمت هایی برای پشتیبانی برنامه نویسی در نظر گرفته شده است که در صورت داشتن هرگونه شوال می توان به آنها مراجعه کرد . چندین شرکت ساخت فیلم آموزشی برای موتور بازی ساز نیز ساعت ها فیلم آموزشی ساخته اند، همچنین کاربران بسیاری در زمینه آموزش یونیتی فیلم ساخته و یا مقاله نوشته اند که تمامی آنها در اینترنت قابل دسترسی است.




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



 سپاس شده توسط javidrayan ، max_3d ، mm501 ، mohamadpc ، pooria kazemi ، killer777 ، Milad_Hyper ، mohammadali1375 ، AliScan ، error-game ، imans77 ، PARS ، mqt ، mohammadsaeedi ، Amirns ، majidac ، torn2013 ، level up ، aminzamani68 ، Xaniar ، محمدمهدی علیجانی ، aminblog76 ، z97 ، sajjad3011 ، Microsoft2 ، Shervin Akh ، game10000 ، fahimi ، aliab
#2
آقا Sameh نمی شه این راهنمای یونیتی رو به فارسی تبدیل کرد ؟sad
اگه بشه انقلابی هم در ایران برای کاربران یونیتی می شه !happy
چون هر چی آموزش تصویری هست همش انگلیسی هست.ohno
شما انگلیسیتون چطوره ؟what
آیا می تونین یه خدمتی برای بازی سازان یونیتی در ایران بکنید ؟what
منتظرم.:">
سلامی دوباره به همه ی دوستان قدیمی و جدید ، بعد از چند سال دوباره برگشتم سر کارم !!!
باید خودمو با یونیتی 5 سازگار کنم !
 سپاس شده توسط Microsoft2 ، fahimi
#3
من!teeth
انگلیسیم خوبه(یه 50 , 60 درصدی(شایدم کمتر))ولی نه در حد این آموزش یونیتی.
-
-
چند روز پیش یه نگاهی به بخش برنامه نویسیش کردم , کلا" همش ادبیات انگلیسی بود.ohnoteeth
 سپاس شده توسط javidrayan ، error-game ، fahimi
#4
دوستان برای طراحی کاراکتر وی بازی های این موتور میشه از zbrush هم استفاده کرد؟
 سپاس شده توسط javidrayan ، fahimi
#5
بله میشه.
 سپاس شده توسط Luffy ، javidrayan ، fahimi
#6
یونیتی یکی از بهترین موتور هاست به عقیده ی من . چون هم ویژوالش خوبه هم قسمت برنامه نویسی اون . smiley
ولی ...c;,g
.
.
.
من از اول یکی از مشتاقان به یادگیری یونیتی بودم ولی چون دیدم یادگیری زبون برنامه نویسیش برای من که یه کوچولو توی سی شارپ شیش و هشت می زنم(ta>>pc>) و سی پلاسو بهتر میفهمم رفتم به سوی یکی دیگه از بهترین موتور ها به نام Game Maker
مرکب در قلم مانند آب است
خجالت میکشم خطم خراب است
از چرت و پرت های ...moa
 سپاس شده توسط javidrayan
#7
sameh خیلی ممنون ازتون یه تیم جمع کردم و میخوایم برای اپ استور بازی بسازیم در صورت امکان اما میخواستم بدونم آیا میشه بزی رو روی پیسی ساخت و روی اسمارت فون ها پرتش کرد و آیا پورتش با کیفیت در میاد روی این موتور؟ی بهتره مستقیم برای اسمارت فون بسازیم؟
killer777 اینکه چه موتوری بهتره بستگی داره به پروژه شما
مثلا شما باید در نطر بگیرید بازیتون در چه سبکه و برای چه پلتفرم هایی خروجی میخواین و خیلی چیزای دیگه
اگه کمی در مورد پروژتون توضیح بدید میتونم بیشتر کمکتون کنم
 سپاس شده توسط killer777 ، javidrayan
#8
یونیتی برای شروع و بازی سازی مستقل خوبه
فقط من منظورتکون رو از اون 80 درصد ویزال نفهمیدم
والا یونیتی که برنامه نویسی ویژال نداره
همون لول دیزاینش مثل بقیه موتور ها ویژاله
لطفا اینو ببین :
http://www.aparat.com/v/5c22f0251fdc3d23...b2d2313732
---------
resim
 سپاس شده توسط javidrayan
#9
(24/9/1390، 01:05 صبح)mohammadali1375 نوشته است: یونیتی برای شروع و بازی سازی مستقل خوبه
فقط من منظورتکون رو از اون 80 درصد ویزال نفهمیدم
والا یونیتی که برنامه نویسی ویژال نداره
همون لول دیزاینش مثل بقیه موتور ها ویژاله

چیزی مثل کیزمت برای یونیتی ساخته شده
.::بازی شاهزاده ی یتیم::. ،بهترین بازی فنی در پنجمین نمایشگاه رسانه های دیجیتال:

http://www.promakers.ir/showthread.php?tid=1796

بازی نبردهای پایدار فتح المبین
 سپاس شده توسط javidrayan
#10
(24/9/1390، 02:13 صبح)prince_of_persia نوشته است:
(24/9/1390، 01:05 صبح)mohammadali1375 نوشته است: یونیتی برای شروع و بازی سازی مستقل خوبه
فقط من منظورتکون رو از اون 80 درصد ویزال نفهمیدم
والا یونیتی که برنامه نویسی ویژال نداره
همون لول دیزاینش مثل بقیه موتور ها ویژاله

چیزی مثل کیزمت برای یونیتی ساخته شده
اره ولی کد نویسیه یونیتی از همه بهتره
فقط یه VS2010رو نصب کنید به راحتی می شه کار کرد !!!!!!!!
برنامه نویسی ویژال ادمو عقب میندازه:P

XEngine
 سپاس شده توسط javidrayan ، fahimi


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  کنترلر اندروید در unity masoodgiryaii 4 687 8/11/1395، 12:05 صبح
آخرین ارسال: mamali me
  آموزش Unity 3D از مبتدی تا حرفه ای Ali360 5 980 8/6/1395، 07:38 عصر
آخرین ارسال: kirito
  ارور در unity 5 harrishs 1 282 17/5/1395، 04:30 عصر
آخرین ارسال: masoodgiryaii
  کمک برای اجرای unity masoodgiryaii 6 699 9/2/1395، 05:47 عصر
آخرین ارسال: نسیم
  مشکل در اجرای مدل در Unity mohaghegh1 3 369 17/12/1394، 10:51 عصر
آخرین ارسال: mohaghegh1



کاربرانِ درحال بازدید از این موضوع: 1 مهمان