یونیتی

۳۰ نکته ای که هر کاربر نرم افزار Unity باید بداند

folderسایر مقالات آموزشی
comments1 دیدگاه
Unity

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

رابط (Interface)

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

۲- اگر لازم است دو شیء بازی را با پانل inspector مقایسه کنید، پانل inspector را کپی کنید، شیء خود را انتخاب کنید، سپس آن پنل را قفل کنید. سپس می توانید شیء دوم خود را انتخاب کرده و آن ها را در کنار دو پانل inspector مشاهده کنید.

رابط (Interface)

۳- در حالت play می توانید یک رنگ را به ویرایشگر اعمال کنید. این کار مفیدی است زیرا تغییرات ایجاد شده در حالت play ذخیره نمی شوند، بنابراین داشتن رنگ قرمز آشکار در هنگام play می تواند شما را از این امر آگاه کند.

در حالت play می توانید یک رنگ را به ویرایشگر اعمال کنید

۴- کامپوننت ها دارای نماد چرخ دنده در سمت راست بالا هستند. از آن برای بالا بردن کامپوننت ها، کپی کردن مقادیر و حذف آن ها از یک شی بازی استفاده کنید.

از منوی چرخ دنده برای بردن کامپوننت ها، کپی کردن مقادیر و حذف آن ها از یک شی بازی استفاده کنید.

۵- از بوم بزرگ که مانع دید شما در صحنه می شود اذیت می شوید؟ با کلیک روی نماد “eye” در سمت راست بالا، لایه UI را پنهان کنید.

با کلیک روی نماد "eye" در سمت راست بالا، لایه UI را پنهان کنید.

انیمیشن

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

نمایش انیمیشن های جداگانه بالا تنه

۲- می توانید از Inverse Kinematics برای تقلید گرفتن یا گرفتن وسایل مکانیکی مانند نگه داشتن فرمان، گرفتن اسلحه های مختلف و غیره استفاده کنید.

۳- علامت “Have Exit Time” را برای هرگونه انتقال انیمیشن که باید هنگام استفاده از یک پارامتر فوراً اتفاق بیفتد، بردارید. Time Exit مشخص می کند که یک کلیپ انیمیشن قبل از انتقال باید اجرا را تمام کند. این موردی است که معمولاً نادیده گرفته می شود و برای کاربران سوال پیش می آید که چرا انیمیشن های آن ها به تعویق افتاده یا کار نمی کنند.

Have Exit Time

۴- در جهت های مختلف می توانید انیمیشن ها را آینه کنید. یک انیمیشن چرخشی چپ را می توان برای یک انیمیشن چرخشی راست آینه کرد. توجه داشته باشید که انیمیشن را معکوس نمی کند و تنها در انیمیشن های انسان نما کار می کند.

در جهت های مختلف می توانید انیمیشن ها را آینه کنید

۵- می توانید کلیپ های انیمیشن را با اضافه کردن مقدار منفی برای speed معکوس کنید. این با انیمیشن های کلی و انسان نما کار می کند، به عنوان مثال پیاده روی رو به جلو می تواند برای پیاده روی رو به عقب نیز استفاده شود.

می توانید کلیپ های انیمیشن را با اضافه کردن مقدار منفی برای speed معکوس کنید.

Scripting (اسکریپت کار کردن)

۱- برای افزودن لغزنده یا slider به مقادیر عددی از Range Attribute استفاده کنید. اگر تیمی کار می کنید، خیلی مفید است زیرا هرکسی که مقادیر را تعیین کند، نمی تواند مقدار کمتر یا بالاتر از آنچه برای استفاده انتظار دارید، اضافه کند. همچنین نگاه کردن به مقادیر عددی را آسان تر می کند.

Scripting (اسکریپت کار کردن)

۲- معمولاً چندین اسکریپت کوچک تر که وظایف خاصی را انجام می دهند بهتر از یک اسکریپت غول پیکر هستند چون برای اصلاح بهترند. به اجزای پیش فرض Unity مانند Rigidbody ، AudioSource ، Colliders و غیره فکر کنید. همه این ها وظایف خاصی را انجام می دهند و می توانند با یکدیگر کار کنند اما Rigidbody کلیپ های صوتی را پخش نمی کند. توجه داشته باشید که همیشه این مورد برقرار نیست، اما در صورت امکان همه چیز را به صورت مدولار نگه دارید.

۳- اسکریپت های خود را سازماندهی کنید تا خواندن آن ها آسان باشد. ما دوست داریم متغیرهای عمومی را در بالا و متغیرهای خصوصی را در پایین نگه داریم. همین کار را با متد ها انجام دهید تا بدون نیاز به تسلط زیاد روی اسکریپت به راحتی درک شوند.

۴- Tool tips و headers یک روش عالی است که به دیگران می گوید یک متغیر / گروه خاص به چه مواردی اشاره دارد.

۵- از کلاس های Gizmos و Handles برای آزمایش مکانیک های مختلف بازی مانند ترسیم کره سیم استفاده کنید تا دامنه مواد منفجره در بازی یا نمایش شعاع کاراکتر دشمن را مشخص کنید:

Scripting (اسکریپت کار کردن)-2

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

۷- در صورت امکان اجزای حافظه کش را در یک متغیر به روش Start یا Awake ذخیره کنید. استفاده از GetComponent در Update ضروری نیست.

۸- هنگام نوشتن حلقه ها / شرط if / موارد دیگر، tab را دو بار فشار دهید تا به سرعت و خودکار، کامل و بسته شدن پرانتز و براکت ها انجام شود. به عنوان مثال ، “if” را بنویسید و tab را دوبار بزنید تا تکمیل شدن خودکار کد را با بیانیه کامل if ببینید.

کارایی و کیفیت

۱- در صورت امکان از تکستچر اطلس استفاده کنید چون کارایی خوبی دارد و همچنین اگر چندین asset تکستچر مشابه نقشه ها و مواد را به اشتراک بگذارند، سازماندهی فایل را آسان تر می کند. در مثال زیر از تکستچر اطلس در Tower Defense Flow برای ویژگی های چند گانه و اشیاء بازی که همه در یک نقشه تکستچر بزرگتر قرار دارند، استفاده شده است.

Tower Defense Flow

۲- هر وقت بخواهید می توانید در صحنه های خود نورپردازی انجام دهید. نورپردازی اگر روی realtime تنظیم شود، کارایی مفیدی دارد. اگر نیازی به نورپردازی realtime ندارید، آن ها (اشیاء بازی) را روی static و bake تنظیم کنید. همچنین می توانید از ترکیبی از نورپردازی در realtime و bake استفاده کنید.

۳- در صورت نیاز به استفاده از مش کلایدر (کلایدرهای compound کارایی بیشتری دارند) توصیه می شود یک نسخه low poly از همان مش ایجاد کنید تا به عنوان مش کلایدر استفاده شود. این نه تنها یک مش کلایدر با کیفیت بالاتر را فراهم می کند بلکه می تواند عملکرد بهتری نیز داشته باشد. همچنین می توانید از Convex استفاده کنید، اما ممکن است نتایج مطلوبی ارائه ندهد.

کارایی و کیفیت نرم افزار Unity

۴- هنگامی که با استفاده از پیام های Debug.Log به پایان کار رسیدید، آن ها را حذف کنید یا نظر دهید. برای سایر پیام های اشکال زدایی و / یا متد های اشکال زدایی ” drawing” نیز صادق است.

۵- پنجره ” stats” می تواند برای تعیین فریم مناسب در ثانیه نادرست باشد. توصیه می شود شمارنده FPS خود را بسازید و از profiler برای عملکرد دقیق تر stats استفاده کنید. ما معمولا از پنجره stats برای set pass calls استفاده می کنیم.

پنجره stats برای set pass calls

۶- برای کاهش اندازه و افزایش کارایی از نقشه ها با کمترین وضوح تصویر استفاده کنید.

۷-اگر انتظار دارید از چندین اشیاء بارها و بارها استفاده کنید از یک سیستم جمع آوری اشیاء برای استفاده مجدد و بدون از بین بردن آن ها استفاده کنید. معرفی و از بین بردن بسیار سریع چندین اشیاء می تواند باعث تخلیه عملکرد شود و کارامد نیست.

سازمان دهی پروژه

۱- از اشیاء بازی خالی (empty) در صحنه خود استفاده کنید تا مانند آیتم ها در کنار یکدیگر گروه بندی شوند. به عنوان نمونه می توان همه ساختمان ها / درختان و زمین های را در گروهی با عنوان “Environment” طبقه بندی کرد. این امر نه تنها یافتن اشیاء را آسان تر می کند، بلکه فعال / غیر فعال کردن گروه های اشیاء را نیز آسان می کند.

۲- در یک یادداشت مشابه، از اشیاء بازی خالی به عنوان اشیاء والد برای مواردی مانند مش (mesh) استفاده کنید. در صورت امکان از قرار دادن اسکریپت ها یا مؤلفه ها به طور مستقیم روی مش ها خودداری کنید. استفاده از والد خالی ویرایش مش را بدون نیاز به ایجاد مجدد و اضافه کردن مؤلفه ها، آسان می کند. همچنین به شما امکان می دهد تا ضمن ثابت نگه داشتن والد، ​​موقعیت / چرخش اجسام مش را کنترل کنید.

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

سازمان دهی پروژه

۴- از نامگذاری مبهم پوشه ها خودداری کنید. اگر سطل زباله دارید، آن را “TrashCan_Prop” بنامید. هر کسی باید بتواند سلسله مراتب صحنه یا پنل پروژه شما را مرور کند و درک خوبی از اشیا، داشته باشد.

۵- Unity Services یک روش عالی برای مدیریت پروژه های شما، یعنی خدمات Collaborateand Cloud Build است. ما از Collaborate برای ذخیره نسخه های پروژه خود برای دسترسی به سایر اعضای تیم، استفاده می کنیم. Cloud Build یک روش عالی برای ساخت بازی برای سیستم عامل های مختلف است و سپس به صورت خودکار لینک های مربوط به ساخت های نهایی را برای اعضای تیم به ایمیل ارسال می کند.

آموزش های یونیتی ما

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

1 دیدگاه. ارسال دیدگاه جدید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست