خلاصه (Summary)
کامپوننت Handle یک ابزار جدید IK (Inverse Kinematics) است که برای دستکاری گروهی از استخوانها طراحی شده است.
برخلاف ابزارهای IK قبلی که تنها یک اند-افکتور برای هر زنجیرهی استخوانی مجاز میکردند، این روش جدید اجازه میدهد چندین اند-افکتور برای یک استخوان تعریف شود.
همچنین، استخوانها الزامی ندارند که به صورت زنجیرهای باشند؛ هر نوع ساختار از جمله شاخهدار نیز پشتیبانی میشود.
یک مثال رایج، استفاده از دادههای موشن کپچر است. در سیستمهای پیشرفتهتر، میتوان یک مجموعه از نقاط مارکرها داشت و یک اسکلت که توسط آنها کنترل میشود.
این کامپوننت Handle در کنار Handle CHOP عمل میکند.
راهاندازی معمول به شکل زیر است:
یک سلسلهمراتب از استخوانها ایجاد کنید.
یک یا چند Handle Component را به مکانهای خاصی روی هر Bone Component متصل کنید.
برای هر هندل یک هدف (Target) در فضا مشخص کنید.
یک Handle CHOP بسازید که این اطلاعات را جمعآوری کرده و کانالهای چرخش برای استخوانها را محاسبه کند.
سپس این مقادیر را به استخوانها برگردانید.
پارامترها – صفحه Handle
Target (هدف): مکانی که هندل استخوان را به سمت آن میکشد (مانند اند-افکتور).
Translate (t): جابجایی در مختصات X, Y, Z نسبت به مبدأ استخوانی که هندل به آن متصل است.
X (tx)
Y (ty)
Z (tz)
Weight (وزن): وقتی چند هندل به یک استخوان متصل شوند، هندلهایی با وزن بالاتر بیشتر به سمت هدفشان کشیده میشوند.
Twist Only (فقط پیچش): اگر فعال باشد، هندل فقط به چرخش محور Z استخوان تأثیر میگذارد. اگر غیرفعال باشد، استخوان را در سه محور rx, ry, rz هدایت میکند.
Falloff (افت): مشخص میکند استخوانهای والد چقدر تحت تأثیر قرار میگیرند وقتی استخوان فرزند به هدفش میرسد. این پارامتر میزان انعطاف زنجیره را کنترل میکند.
Rotation Limits (محدودیت چرخش): مشخص میکند هر استخوان تا چه اندازه مجاز است نسبت به والد خود بچرخد.
محور X: حداقل و حداکثر چرخش (
lrxmin
,lrxmax
)محور Y: حداقل و حداکثر چرخش (
lrymin
,lrymax
)محور Z: حداقل و حداکثر چرخش (
lrzmin
,lrzmax
)
پارامترها – صفحه Render
این بخش تنظیمات متریال و رندر کامپوننت را کنترل میکند.
Material (متریال): انتخاب یک MAT برای اعمال روی هندسه داخلی.
Render (رندر): مشخص میکند هندسه کامپوننت در Render TOP قابلمشاهده باشد یا نه.
Draw Priority (اولویت رسم): ترتیب رسم کامپوننتها را تعیین میکند. مقادیر کوچکتر بعد از مقادیر بزرگتر رسم میشوند. بیشتر برای مدیریت شفافیت استفاده میشود.
Pick Priority (اولویت انتخاب): هنگام استفاده از Render Pick CHOP یا DAT، اگر چند جسم در محدوده انتخاب باشند، مقدار بالاتر انتخاب میشود.
Wireframe Color (رنگ وایرفریم): رنگ R، G و B برای نمایش در حالت وایرفریم.
Light Mask (ماسک نور): به صورت پیشفرض همه نورهای Render TOP روی هندسه اثر میگذارند. این گزینه امکان انتخاب زیرمجموعهای از نورها را میدهد.
پارامترها – صفحه Extensions
این بخش مربوط به اکستنشنهای پایتونی کامپوننت است.
Extension (اکستنشن): اطلاعات مربوط به ساخت اکستنشن روی کامپوننت.
Object: نمونههای کلاسی که میتوان به کامپوننت متصل کرد.
Name (نام): نام اختیاری برای جستجو (به جای نام کلاس).
Promote (ارتقاء): تعیین میکند توابع اکستنشن مستقیم در سطح کامپوننت در دسترس باشند یا باید از طریق
.ext
فراخوانی شوند.Re-Init Extensions: بازکامپایل همه اکستنشنها.
پارامترها – صفحه Common
این بخش تنظیمات عمومی کامپوننت است.
Parent Shortcut: نامی که میتوان برای اشاره به والد استفاده کرد.
Global OP Shortcut: نامی که میتوان در کل پروژه بهعنوان مسیر استفاده کرد.
Internal OP: مسیر به اپراتور داخلی در این کامپوننت.
Node View: مشخص میکند چه چیزی در نمای نود نمایش داده شود.
Operator Viewer: انتخاب اپراتور برای نمایش.
Enable Cloning: فعال یا غیرفعال کردن کپیبرداری از Clone Master.
Clone Master: مسیر کامپوننتی که بهعنوان کلون اصلی استفاده میشود.
Load on Demand: فقط هنگام نیاز کامپوننت را در حافظه بارگذاری میکند.
Enable External .tox: اگر فعال باشد، فایل خارجی .tox هنگام شروع بارگذاری میشود.
External .tox Path: مسیر فایل .tox خارجی روی دیسک.
Reload Custom/Built-in Parameters: پارامترهای سفارشی یا داخلی هنگام بارگذاری مجدد .tox دوباره خوانده میشوند.
Save Backup of External: یک نسخه پشتیبان از .tox خارجی در فایل .toe ذخیره میشود.
Sub-Component to Load: بارگذاری یک زیرکامپوننت خاص از داخل .tox.
Relative File Path Behavior: تعیین میکند مسیرهای فایل فرزند نسبت به کجا باشند (toe، tox یا والد).
کانالهای Info CHOP
اطلاعات اضافی Handle COMP از طریق یک Info CHOP قابل دسترسی است.
کانالهای عمومی COMP
num_children: تعداد فرزندان این کامپوننت.
کانالهای عمومی اپراتور
total_cooks: تعداد دفعات اجرای اپراتور از شروع فرآیند.
cook_time: مدت زمان آخرین اجرا (به میلیثانیه).
cook_frame: شماره فریم آخرین اجرا (نسبت به تایملاین کامپوننت).
cook_abs_frame: شماره فریم آخرین اجرا (نسبت به زمان مطلق).
cook_start_time: زمان شروع آخرین اجرا (میلیثانیه).
cook_end_time: زمان پایان آخرین اجرا (میلیثانیه).
cooked_this_frame: اگر در این فریم اجرا شده باشد، مقدار ۱ دارد.
warnings: تعداد هشدارهای اپراتور.
errors: تعداد خطاهای اپراتور.