آشنایی با برخی از Component های کاربردی یونیتی - قسمت سوم

در این پست می خوایم در ادامه پست قبل با یک سری از Component های کاربردی یونیتی آشنا بشیم.

کامپوننتی که می خوایم دربارش صحبت کنیم، Collider نام داره. وظیفه این کامپوننت مدیریت برخورد بین دو یا چند gameObject رو بر عهده دارد. به طور مثال اگر بخواهیم برخورد تیر به بازیکن رو مدیریت کنیم (کم کردن جون بازیکن و سایر افکت ها) از Collider استفاده می کنیم. این کامپوننت اشکال مختلفی مدیریت بهتر برخورد بین اشکال مختلف دو بعدی و سه بعدی دارد (کره - مکعب - مربع - استوانه (کپسول) و ....)، که ما چند تا از اشکال مختلف اون رو توضیح می دهیم.

باکس کولایدر دوبعدی (Box Collider 2D) برای اشکال 4 ضلعی دو بعدی
باکس کولایدر دوبعدی (Box Collider 2D) برای اشکال 4 ضلعی دو بعدی


باکس کولایدر (Box Collider) برای اشکال 4 ضلعی سه بعدی
باکس کولایدر (Box Collider) برای اشکال 4 ضلعی سه بعدی


کپسول کلایدر (Capsule Collider) برای اشکال استوانه ای یا کپسول شکل (در برخی از بازی های اول شخص (First Person) مدل بازیکن به شکل کپسول می باشد.)
کپسول کلایدر (Capsule Collider) برای اشکال استوانه ای یا کپسول شکل (در برخی از بازی های اول شخص (First Person) مدل بازیکن به شکل کپسول می باشد.)


سرکل کلایدر دو بعدی(Circle Collider 2D) برای اسکال بیضی یا دایره شکل
سرکل کلایدر دو بعدی(Circle Collider 2D) برای اسکال بیضی یا دایره شکل


سفیِر کلایدر (Sphere Collider) برای اشکال کُره ای شکل
سفیِر کلایدر (Sphere Collider) برای اشکال کُره ای شکل


همونطور که مشاهده می کنید در بین این کلایدر ها یک سری فیلد یا خصوصیت مشابه وجود دارد و میشه گفت تنها فرق اساسی بین این کامپوننت ها شکل اونهاست.

- گزینه Edit Collider به شما این اجازه رو میده تا بتونین ابعاد کلایدر خود را با ابعاد شی اصلی تنطیم کنید.

- گزینه IsTrigger برای فعال / غیر فعال کردن ثبت برخورد یک RigidBody هست که به این معناست که زمانی که یک gameObject که دارای RigidBody هست با این شی برخورد کرد آیا متد های OnTriggerEnter, OnTriggerExit و OnTriggerStay به اصطلاح Call شود یا خیر.

- گزینه Material برای انتخاب فیزیک متریال (Physic Material) برای کلایدر است. (Physic Material برای تعیین میزان اصطحلاک و اثر bounce یا پرش بعد از ایجاد برخورد است)


اخرین موضوعی که می خوایم دربارش صحبت کنیم گزینه NewScript هست که در انتهای لیست گزینه Add Component قرار داره. با انتخاب این گزینه unity به طور خودکار یک فایل با پسوند .cs ایجاد می کند.

بعد از انتخاب گزینه newScript پنجره بالا باز می شود. بعد از وارد کردن نام مورد نظر برای کامپوننت گزینه Create and Add رو انتخاب می کنیم.
بعد از انتخاب گزینه newScript پنجره بالا باز می شود. بعد از وارد کردن نام مورد نظر برای کامپوننت گزینه Create and Add رو انتخاب می کنیم.


شما می توانید با استفاده از برنامه Visual Studio این فایل را که به زبان #C هست را ویرایش کرده و به عنوان یک کامپوننت به gameObject خود اضافه کنید.


محیط Visual Studio و یک اسکریپت تازه ایجاد شده توسط Unity
محیط Visual Studio و یک اسکریپت تازه ایجاد شده توسط Unity


همونطور که توی عکس بالا می بینید یک کلاس به نامی که شما انتخاب می کنید ایجاد می شود و این کلاس دارای 2 متد به نام های Start و Update هست. متد Start زمانی که کد به طور خودکار اجرا می شود صدا زده می شود و محتوای آن اجرا می شود. از این متد اصولا برای آماده سازی فیلد ها و چیز هایی که در زمان اجرا کد به آن نیاز دارد استفاده می شود. متد بعدی متد Update هست که این متد بعد از اتمام کار متد Start ، در هر فریم یا لحظه صدا زده می شود. در این متد تمامی کار هایی که لازم است در هر لحظه تغییر یا بررسی شود قرار داره می شود.