خلاصه
گره Point SOP به شما امکان میدهد مستقیماً به هندسه دسترسی پیدا کرده و ویژگیهای نقاط (Position، Color، Normal، Texture و سایر ویژگیها) را تغییر دهید. همچنین میتوان ویژگیهای سفارشی (Custom Attributes) ایجاد کرد. این گره مکمل Primitive SOP است. با استفاده از ورودی دوم میتوان دو SOP را با استفاده از عبارات مربوطه ترکیب کرد. اگر تعداد نقاط ورودی دوم کمتر از ورودی اول باشد، نقاط ورودی دوم چرخهای تکرار میشوند.
مثالها:
رنگبندی نقاط
برگرداندن نرمالهای هندسه
جابجایی هر نقطه به مکان دلخواه با استفاده از عبارات
ویژگی Width (در Line MAT) پهنای خط و ویژگی Scale (pscale) اندازه ذرات را کنترل میکند.
نکته: برای انعطاف بیشتر از Script SOP استفاده کنید.
پارامترها – صفحه Point
Group (group)
اگر گروههایی در ورودی وجود داشته باشند، مشخص کردن نام گروه باعث میشود SOP فقط روی آن گروه اعمال شود. میتوان از الگوها (Pattern Matching) استفاده کرد.
Position (t)
عباراتی برای جابجایی مختصات XYZ نقاط.
ویژگیهای قابل تغییر:
me.inputPoint.xme.inputPoint.yme.inputPoint.z
مثال:
me.inputPoint.x→ عبور بدون تغییر Xme.inputPoint.x + 5→ جابجایی ۵ واحدی X
مقادیر Y و Z نیز قابل تغییر هستند: Position ty و Position tz.
Weight (doweight)
انتخاب بین حفظ وزن یا اضافه کردن وزن جدید:
Keep Weight: خاموش
New Weight: روشن
Weight (weight) – اگر New Weight انتخاب شده باشد، میتوان عبارات را برای تغییر وزن نقاط وارد کرد. مقدار وزن: 0.0001 تا بینهایت
Color (doclr)
انتخاب بین حفظ رنگ، اضافه کردن رنگ جدید یا عدم استفاده از رنگ:
Keep Color: خاموش
Add Color: روشن
No Color: حذف
Color Diff (diff) – اگر Add Color انتخاب شود، ویژگی رنگ Cd اضافه/تغییر میشود:
me.inputColor[0]= قرمزme.inputColor[1]= سبزme.inputColor[2]= آبیme.inputColor[3]= آلفا
Alpha (alpha) – کنترل ویژگی آلفا: Cd[3] یا me.inputColor[3]
Normal (donml)
انتخاب بین حفظ، اضافه یا حذف نرمالها:
Keep Normal: خاموش
Add Normal: روشن
No Normal: حذف
Normals (n) – اگر Add Normal انتخاب شود، ویژگی نرمال N اضافه/تغییر میشود:
me.inputNormal[0],me.inputNormal[1],me.inputNormal[2]
برگرداندن نرمالها:
وارد کردن (-me.inputNormal[0] -me.inputNormal[1] -me.inputNormal[2]) در فیلدهای Add Normal، نرمالها را معکوس میکند.
Texture (douvw)
انتخاب بین حفظ، اضافه یا حذف مختصات بافت:
Keep Texture: خاموش
Add Texture: روشن
No Texture: حذف
ویژگیهای UV:
me.inputTexture[0]= Ume.inputTexture[1]= Vme.inputTexture[2]= W
Width (Line MAT) (dowidth)
انتخاب بین حفظ یا اضافه کردن Width:
Keep Width: خاموش
New Width: روشن
Width (width) – اگر New Width انتخاب شود، عرض خطوط اضافه/تغییر میشود. ویژگی: me.inputPoint.width[0]
Scale (dopscale)
انتخاب بین حفظ، اضافه یا حذف Scale (pscale):
Keep Scale: خاموش
Add Scale: روشن
No Scale: حذف
ویژگی: me.inputPoint.pscale[0]
پارامترها – صفحه Custom
Custom Attribute (attr) – ویژگیهای سفارشی برای اضافه کردن
Name (
attr0name) – نام ویژگیType (
attr0type) – نوع ویژگی: float, vec2, vec3, vec4, int, ivec2, ivec3, ivec4Value (
attr0value) – مقدار ویژگی
پارامترها – صفحه Particle
Point Mass/Drag (domass) – حفظ، اضافه یا حذف جرم و درگ:
Keep Mass/Drag: خاموش
Add Mass/Drag: روشن
No Mass/Drag: حذف
Mass (mass) – مقدار جرم
Drag (drag) – مقدار درگ
Tension (dotension) – حفظ، اضافه یا حذف کشش
Tension (tension) – مقدار کشش: me.inputPoint.tension[0]
Spring K (dospringk) – حفظ، اضافه یا حذف ثابت فنر
Spring K (springk) – مقدار: me.inputPoint.springk[0]
Velocity (dovel) – حفظ، اضافه یا حذف سرعت
ویژگیها:
me.inputPoint.v[0..2]
Up Vector (doup) – ایجاد یا حذف بردار Up برای نقاط
ویژگیها:
me.inputPoint.up[0..2]
پارامترها – صفحه Force
Radius (doradius) – حفظ، اضافه یا حذف شعاع (Radiusf)
Radiusf (radiusf) – مقدار شعاع
F Scale (doscale) – حفظ، اضافه یا حذف ضریب نیرو
Radial / Normal / Edge / Directional Force – معرفی انواع نیروها:
Radial: به سمت نقطه جاذبه
Normal: در جهت نرمال نقاط
Edge: در جهت لبه پرمیتیو
Directional: نیرو با جهت دلخواه
ورودیهای اپراتور
Input 0: Source 1
Input 1: Source 2
کانالهای Info CHOP
کانالهای اطلاعاتی مشترک SOP
num_points – تعداد نقاط
num_prims – تعداد پرمیتیوها
num_particles – تعداد ذرات
last_vbo_update_time – زمان بروزرسانی داده GPU
last_meta_vbo_update_time – زمان بروزرسانی داده سطح متا
کانالهای اطلاعاتی مشترک اپراتور
total_cooks – تعداد دفعات پردازش
cook_time – مدت زمان آخرین پردازش (میلیثانیه)
cook_frame – شماره فریم آخرین پردازش (نسبت به Component Timeline)
cook_abs_frame – شماره فریم مطلق آخرین پردازش
cook_start_time – زمان شروع پردازش در فریم (میلیثانیه)
cook_end_time – زمان پایان پردازش در فریم (میلیثانیه)
cooked_this_frame – ۱ اگر پردازش شده باشد
warnings – تعداد هشدارها
errors – تعداد خطاها
