🧩 Select SOP
خلاصه (Summary)
Select SOP به شما این امکان را میدهد که یک SOP دیگر را از هر مکانی در شبکهی TouchDesigner فراخوانی و استفاده کنید.
در واقع این نود، نوعی لینک یا ارجاع مستقیم (Reference) به یک SOP دیگر است، بدون آنکه دادهها را دوباره کپی کند.
🔹 اگر تنها یک SOP در پارامتر آن مشخص شود، حافظهی آن بهصورت اشتراکی (Shared) استفاده میشود،
یعنی دادهها در حافظه دوباره ساخته نمیشوند و تنها از نسخهی اصلی استفاده میشود.
به همین دلیل، Select SOP برای بهینهسازی حافظه و سازماندهی پروژهها بسیار مفید است.
⚙️ پارامترها (Parameters – Page)
| پارامتر | توضیح |
|---|---|
| SOP (sop) | مسیر (Path) نود SOP مورد نظر را مشخص میکند. کافی است مسیر کامل یا نسبی SOP مورد نظر را وارد کنید تا خروجی آن در Select SOP نمایش داده شود. |
📘 مثال:
اگر نودی به نام sphere1 در همان شبکه داشته باشید، در پارامتر SOP بنویسید:
sphere1
یا اگر نود در شبکهای دیگر است:
../geo1/sphere1
🔍 کاربردهای رایج Select SOP
استفاده از هندسهی یک SOP در مکانهای مختلف بدون نیاز به کپیکردن آن؛
صرفهجویی در حافظه، مخصوصاً در پروژههای سنگین با چندین نسخه از یک مدل؛
نگهداشتن ساختار شبکه تمیزتر و قابل مدیریتتر؛
ترکیب خروجی چند SOP از شبکههای جدا در یک محل مرکزی؛
تسهیل در کار تیمی، چون میتوان به SOPهایی در کامپوننتهای دیگر اشاره کرد بدون تغییر در ساختار اصلی.
📊 کانالهای اطلاعاتی (Info CHOP Channels)
اطلاعات مربوط به Select SOP مانند سایر SOPها از طریق Info CHOP در دسترس است:
🧮 Common SOP Info Channels
| کانال | توضیح |
|---|---|
| num_points | تعداد نقاط (Points) در این SOP. |
| num_prims | تعداد پریمیتیوها (Primitives). |
| num_particles | تعداد ذرات (Particles). |
| last_vbo_update_time | مدت زمان صرفشده برای بهروزرسانی دادههای هندسی GPU (در Thread دیگر). |
| last_meta_vbo_update_time | زمان بهروزرسانی دادههای متاسطحها (مثل متابالها یا نربها) در GPU. |
⚙️ Common Operator Info Channels
| کانال | توضیح |
|---|---|
| total_cooks | تعداد دفعات Cook شدن از زمان شروع تا کنون. |
| cook_time | مدت زمان آخرین Cook (میلیثانیه). |
| cook_frame / cook_abs_frame | فریمی که آخرین Cook در آن انجام شده (نسبی یا مطلق). |
| cook_start_time / cook_end_time | زمان شروع و پایان Cook در فریم جاری. |
| cooked_this_frame | اگر در فریم جاری Cook شده باشد، مقدار آن ۱ است. |
| warnings / errors | تعداد هشدارها و خطاهای موجود در این اپراتور. |
💡 جمعبندی
Select SOP مانند «آینه»ای است که دادهی یک SOP دیگر را در مکان جدیدی منعکس میکند.
بدون ایجاد کپی، میتوانی خروجی یک نود را در نقاط مختلف شبکه استفاده کنی.
🎯 مزایا:
مصرف کمتر حافظه؛
مدیریت سادهتر شبکه؛
دسترسی سریع به دادهی هر SOP از هر نقطه؛
کاربردی برای ایجاد سیستمهای ماژولار و سازمانیافته در TouchDesigner.
