در ایتدای آموزش آشنایی با Transform و سیستم والد-فرزندی (Parenting) در یونیتی لازم است بگوییم که وقتی کار با یونیتی در وب دانش را شروع کردیم، گفتیم که تغییر شکل (Transform) یک شیء در بازی یکی از مهمترین اجزای آن است. در این فصل، این موضوع را با جزئیات بررسی میکنیم. همچنین، با مفهوم والد و فرزند بودن اشیا (Object Parenting) آشنا خواهیم شد.
Transform (تغییر شکل) چیست؟
transform شامل سه ویژگی اصلی است:
- موقعیت (Position): مشخص میکند شیء در کجای محیط بازی قرار دارد.
- چرخش (Rotation): میزان چرخش شیء را بر اساس درجه مشخص میکند.
- مقیاس (Scale): اندازه شیء را نسبت به اندازه اصلی آن تعیین میکند.
هر یک از این ویژگیها دارای سه مقدار برای سه محور مختصات (X، Y و Z) هستند. در بازیهای دوبعدی معمولاً محور Z در موقعیتدهی اشیا استفاده نمیشود، مگر برای ایجاد جلوههای پارالاکس (Parallax) که حس عمق را شبیهسازی میکند.
مقیاس (Scale) یک شیء تعیین میکند که نسبت به اندازه اصلی خود چقدر بزرگ یا کوچک باشد. مثلاً، اگر یک مربع ۲×۲ داشته باشیم و مقدار مقیاس X را ۳ و مقیاس Y را ۲ تنظیم کنیم، مربع جدید ابعاد ۶×۴ خواهد داشت.
والد و فرزند بودن اشیا (Object Parenting) چیست؟
در یونیتی، اشیا از یک سیستم سلسلهمراتبی (Hierarchy) پیروی میکنند. در این سیستم، یک شیء میتواند والد (Parent) شیء دیگری شود. این یعنی، وقتی یک شیء فرزند (Child) داشته باشد، تغییرات مربوط به موقعیت، چرخش و مقیاس آن، بر اساس شیء والد انجام میشود، نه بر اساس دنیای بازی.
مثلاً:
- اگر یک شیء بدون والد در موقعیت (۱۰, ۰, ۰) قرار بگیرد، فاصلهاش از مرکز دنیای بازی ۱۰ واحد خواهد بود.
- اما اگر همین شیء فرزند یک شیء دیگر باشد و در موقعیت (۱۰, ۰, ۰) قرار بگیرد، این مقدار را نسبت به موقعیت شیء والد خود در نظر میگیرد.
برای والد کردن یک شیء کافی است آن را در پنجره Hierarchy روی شیء موردنظر بکشید و رها کنید. در لیست آبجکتها، اشیای فرزند با یک تورفتگی و فلشی کنار شیء والد نمایش داده میشوند.
کاربردهای والد و فرزند کردن اشیا
یکی از کاربردهای اصلی والد و فرزند کردن اشیا، مدیریت راحتتر اجزای پیچیده است. برای مثال، یک تانک ممکن است از چندین قسمت جداگانه تشکیل شده باشد (مثلاً چرخها، برجک، بدنه). در این حالت، همه این قسمتها میتوانند فرزند یک شیء والد به نام “تانک” شوند. حالا هر تغییری که روی شیء والد انجام شود، تمام اجزای تانک هم همراه آن حرکت خواهند کرد.
آموزش Transform و سیستم والد-فرزندی (Parenting) در یونیتی به اتمام رسید. هر سوالی دارید بپرسید.
در درس بعدی از آموزش یونیتی وب دانش، درباره داراییهای داخلی (Internal Assets) صحبت خواهیم کرد و یاد میگیریم که چگونه آنها را در پروژه مدیریت کنیم.
منبع: https://www.tutorialspoint.com/unity/unity_transforms_and_object_parenting.htm






