خلاصه
Convert SOP هندسه را از یک نوع هندسه به نوع دیگر تبدیل میکند.
انواع شامل: پلیگان (Polygon)، مش (Mesh)، پچ بزیه (Bezier Patch)، ذرات (Particle) و کره (Sphere Primitive) هستند.
محتوا
خلاصه
پارامترها – صفحه اصلی
پارامترها – سطح جزئیات (Level of Detail)
پارامترها – تقسیمات بهازای هر بخش (Divisions per Span)
یادداشتها
ورودیهای اپراتور
کانالهای Info CHOP
7.1. کانالهای عمومی SOP Info
7.2. کانالهای عمومی Operator Info
پارامترها – صفحه اصلی
Group group – اگر گروه ورودی وجود داشته باشد، با مشخصکردن نام گروه در این فیلد، SOP فقط روی همان گروه اعمال میشود. الگوها (Pattern) پشتیبانی میشوند.
From Type fromtype – ⊞ – مشخص میکند که کدام نوع هندسه باید تبدیل شود. مقدار پیشفرض All Types:
All Types – تمام هندسهها تبدیل میشوند.
Sphere – کره
Tube – لوله
Particles – ذرات
Meta-ball – متابال
Polygon – پلیگان
Mesh – مش
Bezier Curve – منحنی بزیه
Bezier Surface – سطح بزیه
NURBS Curve – منحنی نربز
NURBS Surface – سطح نربز
Circle – دایره
Triangle Strip – نوار مثلثی
Triangle Fan – پنکه مثلثی
Convert To totype – ⊞ – مشخص میکند نوع انتخابی از بالا به چه نوعی تبدیل شود. پیشفرض تبدیل به Polygon است.
🔹 یادداشتها:
همه هندسهها به همه انواع قابلتبدیل نیستند. برای مثال، سطح پلیگان مثلثیشده به یک سطح نربز منفرد، یا یک مش کره به یک کره ابتدایی قابل تبدیل نیستند.
برخی تبدیلها شکل را حفظ میکنند (مثل: بزیه → نربز یا مش پلیگانی → سطح نربز).
دایرهها: برای کاربرانی که با دایرههای پلیگانی کار میکنند، میتوان آنها را به دایرههای ابتدایی برای SOPهای اسکلت TouchDesigner (مانند Skeleton, Arm, Limb) تبدیل کرد.
سطوح بریدهشده (Trimmed Surfaces): اگر موجودیت ورودی منحنی تخت (نربز یا بزیه) باشد، سطح بریدهای ایجاد میشود که قطعه مرئی دقیقاً با منحنی منطبق است. اگر منحنی تخت نباشد، به سطح غیر بریده تبدیل میشود. این روش سطوح تمیز و عالی تولید میکند و منحنیهای مقعر را بهخوبی مدیریت میکند.
انواع مقصد:
Polygon
Mesh
Bezier Curve
Bezier Surface
NURBS Curve
NURBS Surface
Circle
Trimmed Bezier Surface
Trimmed NURBS Surface
Particles
Connectivity surftype – ⊞ – مشخص میکند نقاط سطح جدید چگونه به هم متصل شوند:
Rows – ردیفهای افقی
Columns – ستونهای عمودی
Rows and Columns – هر دو (چهارضلعی در نمایش سیمی، اما پلیگانها باز هستند)
Triangles – با مثلثها
Quadrilaterals – چهارضلعیها (پیشفرض)
Alternating Triangles – مثلثهای متناوب (برعکس هم)
پارامترها – صفحه سطح جزئیات (Level of Detail)
این بخش روی فیلدهای U/V/Trim Curve اثر دارد.
U lodu – وقتی روی Level of Detail باشد، تعداد نقاط/CVها در هندسه خروجی را تعیین میکند. مثلاً تبدیل سطح نربز به مش پلیگانی با LOD=1 تقریباً درست است، اما LOD=2 مش بسیار متراکمتری میدهد. وقتی روی Divisions per Span باشد، تعداد تقسیمات در هر بخش را مشخص میکند.
💡 نکته: میتوانید LOD را با فاصله از دوربین (primdist()) انیمیت کنید تا جزئیات بهصورت پویا تغییر کنند.
V lodv – مشابه U.
Trim-Curve lodtrim – بخش بریده سطح با این مقدار LOD پردازش میشود.
پارامترها – صفحه تقسیمات بهازای هر بخش (Divisions per Span)
این هم روی فیلدهای U/V/Trim Curve اثر دارد.
U divu – تعداد تقسیمات در هر بخش.
V divv – مشابه U.
Trim-Curve divtrim – بخش بریده سطح با این تقسیمات پردازش میشود.
ترتیب پایه (Order)
U Order orderu – هنگام تبدیل به نوع اسپلاین، درجه + 1 تابع پایه U را مشخص میکند.
V Order orderv – مشابه U.
سایر پارامترها
Preserve Original new – اگر فعال باشد، هندسه اصلی در کنار هندسه تبدیلشده حفظ میشود.
Interpolate Through Hulls interphull – در تبدیل پلیگان به نربز/بزیه، اگر فعال باشد، توپولوژی اصلی حفظ میشود.
Particle Type prtype – ⊞ – نحوه نمایش ذرات:
Render as Lines – بهصورت خط دو نقطهای (وابسته به سرعت ذره).
Render as Point Sprites – مربعهایی رو به دوربین، با بافت مختصات خودکار.
یادداشتها
تبدیل وجه به سطح: هنگام تبدیل پلیگانها به مش، تنها در صورتی یک مش واحد ساخته میشود که از Facet SOP استفاده شود. در غیر این صورت هر پلیگان جداگانه تبدیل میشود.
ورودیهای اپراتور
Input 0: –
کانالهای Info CHOP
اطلاعات اضافی Convert SOP از طریق Info CHOP در دسترس است.
کانالهای عمومی SOP Info
num_points – تعداد نقاط
num_prims – تعداد المانها
num_particles – تعداد ذرات
last_vbo_update_time – زمان صرفشده برای بهروزرسانی دادههای GPU (از CPU) در رشته جداگانه
last_meta_vbo_update_time – مشابه برای سطوح متا (متابال یا نربز)
کانالهای عمومی Operator Info
total_cooks – تعداد دفعات پردازش اپراتور
cook_time – مدت زمان آخرین پردازش (ms)
cook_frame – شماره فریم آخرین پردازش در تایملاین کامپوننت
cook_abs_frame – شماره فریم آخرین پردازش در زمان مطلق
cook_start_time – زمان شروع پردازش در فریم (ms)
cook_end_time – زمان پایان پردازش در فریم (ms)
cooked_this_frame – اگر در این فریم پردازش شده باشد = 1
warnings – تعداد هشدارها
errors – تعداد خطاها
