خلاصه
Node یا Lattice SOP به شما اجازه میدهد تغییرات متحرک (Animated Deformation) روی هندسه ورودی خود ایجاد کنید، با دستکاری شبکهها یا یک جعبه subdivide شده که هندسه منبع ورودی را احاطه کرده است.
تغییر شکل یک شی با حرکت چند شبکه بسیار سادهتر از آن است که بخواهید هر نقطهی شی را به صورت جداگانه انیمیت کنید.
این SOP ظاهر سادهای دارد و دکمههای کمی دارد، اما مهم است که نحوه عملکرد آن را درک کنید:
ورودی اول با نام Geometry to Deform: هندسهای که میخواهید تغییر دهید.
ورودی دوم با نام Rest Geometry: باید یک شبکه با فاصله مساوی باشد که بهطور کامل هندسهای را که میخواهید تغییر دهید احاطه کند.
ورودی سوم با نام Deformed Geometry: نسخهای از شبکه اولیه است که بهطور خاص تغییر داده شده است، یا با استفاده از کانالهای انیمیشن، کشیدن نقاط در Model Editor، یا عبور از Spring SOP که با شبیهسازی نیروهای فیزیکی آن را منحرف میکند.
Lattice تغییر شکل را بر اساس اختلاف بین Rest Geometry و Deformed Geometry محاسبه میکند و آن را به هندسه ورودی اعمال میکند. خروجی SOP، هندسه تغییر شکل یافتهی ورودی است. اگر Deformed Geometry انیمیت شود، خروجی نیز در هر فریم خم، پیچ و کشیده خواهد شد.
پارامترها – صفحه Lattice
Group (گروه) – group
زیرمجموعهای از نقاط در ورودی اول که باید تغییر شکل داده شوند. الگوها (Patterns) را میپذیرد، همانطور که در Pattern Matching توضیح داده شده.Deform Type (نوع تغییر شکل) – deformtype ⊞
مشخص میکند تغییر شکل باید با استفاده از شبکه منظم (Lattice) انجام شود یا با ابر نقاط دلخواه (Arbitrary Point Cloud).Lattice (lattice): تغییر شکل با شبکه منظم.
هم Rest Geometry و هم Deformed Geometry باید شبکه باشند و ترتیب نقاط مشخصی داشته باشند. این ترتیب توسط Box SOP هنگام فعال بودن گزینه Use Divisions تولید میشود. تعداد تقسیمبندیها باید با هندسه ورودی مطابقت داشته باشد. در غیر این صورت خطا داده میشود.Points (points): تغییر شکل با ابر نقاط دلخواه.
هم Rest Geometry و هم Deformed Geometry باید همان ابر نقاط را داشته باشند. نقاطی که در شعاع مشخص از نقاط Rest Geometry نباشند، تغییر شکل داده نمیشوند. میزان تغییر شکل اعمال شده به یک نقطه بر اساس میانگین وزندار اختلاف بین Rest Geometry و Deformed Geometry است. تابع وزن از Metaball Kernel مشخص شده گرفته میشود، بنابراین رفتار شبیه اعمال یک متابال مغناطیسی روی هر نقطه از Rest Geometry است.
Divisions (تقسیمبندیها) – divs ⊞
باید با تعداد تقسیمبندیهای شبکه منطبق باشد.X – divsx
Y – divsy
Z – divsz
Kernel Function (تابع کرنل) – kernel ⊞
تغییر شکل با مشخص کردن تابع کرنل و نقاط باعث آسانتر شدن تغییر شکل ابر نقاط دلخواه میشود، زیرا توپولوژی شبکه مانند یک متابال رفتار میکند نه یک شبکه ثابت. تابع کرنل تعیین میکند کدام متا کرنل برای تعیین تأثیر یک نقطه استفاده شود.Wyvill model – wyvill
Elendt model – elendt
Blinn model – blinn
Links model – links
Radius (شعاع) – radius
اندازه مناطق تحت تأثیر نقاط.
ورودیهای Operator
Input 0: Geometry to deform
Input 1: Rest Geometry
Input 2: Deformed Geometry
کانالهای Info CHOP
اطلاعات اضافی مربوط به Lattice SOP از طریق Info CHOP در دسترس است.
کانالهای عمومی SOP Info
num_points – تعداد نقاط در این SOP
num_prims – تعداد primitiveها در این SOP
num_particles – تعداد ذرات در این SOP
last_vbo_update_time – زمان صرفشده در یک thread دیگر برای بهروزرسانی دادههای هندسی روی GPU از دادههای CPU. این زمان بخشی از زمان فریم معمولی نیست.
last_meta_vbo_update_time – زمان صرفشده در یک thread دیگر برای بهروزرسانی دادههای هندسی سطح متا روی GPU. این زمان هم بخشی از زمان فریم معمولی نیست.
کانالهای عمومی Operator Info
total_cooks – تعداد دفعاتی که اپراتور از زمان شروع پردازش اجرا شده است
cook_time – مدت زمان آخرین cook بر حسب میلیثانیه
cook_frame – شماره فریمی که آخرین بار پردازش شد
cook_abs_frame – شماره فریمی که آخرین بار در زمان مطلق پردازش شد
cook_start_time – زمان شروع پردازش در فریمی که پردازش شد (میلیثانیه)
cook_end_time – زمان پایان پردازش در فریمی که پردازش شد (میلیثانیه)
cooked_this_frame – اگر در همین فریم پردازش شده باشد، ۱
warnings – تعداد هشدارها در این اپراتور
errors – تعداد خطاها در این اپراتور
