خلاصه (Summary)
CPlusPlus TOP به شما اجازه میدهد اپراتورهای سفارشی TOP بسازید، با نوشتن پلاگین خودتان به زبان ++C.
برای جزئیات بیشتر ببینید: Write a CPlusPlus Plugin و دیگر مقالات موجود در دستهبندی ++C که روش ساخت پلاگین برای استفاده در این نود و دسترسی به پروژههای نمونه را توضیح میدهند.
برای ارتقای CPlusPlus TOPهایی که با هدرهای نسخههای قبل از TouchDesigner 2021.10000 کامپایل شدهاند و میخواهید در نسخههای 2022.20000 و بعد از آن کار کنند، به بخش CPlusPlus TOP Upgrades For 2022.20000 Builds مراجعه کنید.
👉 همچنین ببینید: CPlusPlus CHOP، CUDA
پارامترها – صفحه Load
-
Plugin Path (plugin) – مسیر پلاگینی که میخواهید بارگذاری کنید.
-
Re-Init Class (reinit) – اگر روشن باشد، نمونه ساختهشده از کلاس پلاگین را حذف میکند و یک نمونه جدید میسازد.
-
Re-Init Class (reinitpulse) – بلافاصله کلاس را دوباره مقداردهی میکند.
-
Unload Plugin (unloadplugin) – وقتی مقدار این پارامتر بیشتر از ۱ شود، نمونه کلاس ساختهشده را حذف و پلاگین را از حافظه خارج میکند. اگر چند TOP یک پلاگین مشترک را بارگذاری کرده باشند، همه باید آن را unload کنند تا فایل آزاد شود.
-
Anti-Alias (antialias) ⊞ – سطح Anti-Aliasing برای Framebuffer ایجادشده:
-
1x (aa1)
-
2x (aa2)
-
4x (aa4)
-
8x (aa8)
-
16x (aa16)
-
32x (aa32)
-
-
Depth Buffer (depthbuffer) ⊞ – فرمت پیکسلی بافر عمق (در صورت نیاز):
-
None
-
24-Bit Fixed-Point
-
32-Bit Floating-Point
-
-
Stencil Buffer (stencilbuffer) – فعال کنید اگر به بافر استنسیل نیاز دارید.
-
# of Color Buffers (numcolorbufs) – هر شیدر میتواند به بیش از یک بافر RGBA خروجی دهد. به جای نوشتن روی
gl_FragColorباید رویgl_FragData[i]بنویسید که i شماره بافر رنگ است.
پارامترها – صفحه Common
-
Output Resolution (outputresolution) ⊞ – تغییر سریع رزولوشن خروجی:
-
Use Input
-
Eighth (یکهشتم)
-
Quarter (یکچهارم)
-
Half (نصف)
-
2X، 4X، 8X
-
Fit Resolution
-
Limit Resolution
-
Custom Resolution
-
-
Resolution (resolution) ⊞ – وقتی Custom انتخاب شود فعال میشود. برخی ژنراتورها (مثل Constant و Ramp) فقط از این مقدار استفاده میکنند.
-
W (resolutionw)
-
H (resolutionh)
-
-
Resolution Menu (resmenu) – منوی کشویی رزولوشنهای پرکاربرد.
-
Use Global Res Multiplier (resmult) – از ضریب رزولوشن سراسری (Preferences > TOPs) استفاده میکند. این ویژگی برای اجرای یک پروژه روی سختافزارهای متفاوت (مثلاً کارت گرافیک ضعیف لپتاپ) کاربرد دارد.
-
Output Aspect (outputaspect) ⊞ – نسبت تصویر خروجی:
-
Use Input
-
Resolution
-
Custom Aspect
-
-
Aspect (aspect) ⊞ – وقتی Custom فعال است.
-
Aspect1
-
Aspect2
-
-
Aspect Menu (armenu) – نسبتهای تصویر پرکاربرد.
-
Input Smoothness (inputfiltertype) ⊞ – فیلترینگ پیکسلی روی ورودی.
-
Fill Viewer (fillmode) ⊞ – نحوه نمایش تصویر در Viewer:
-
Use Input
-
Fill
-
Fit Horizontal
-
Fit Vertical
-
Fit Best
-
Fit Outside
-
Native Resolution
-
-
Viewer Smoothness (filtertype) ⊞ – فیلترینگ پیکسلها در Viewer:
-
Nearest Pixel
-
Interpolate Pixels
-
Mipmap Pixels
-
-
Passes (npasses) – عملیات TOP را به تعداد مشخص تکرار میکند. نتیجه هر پاس ورودی پاس بعدی میشود. (مگر در GLSL TOP با compute shader که همچنان از ورودی اصلی استفاده میکند.)
-
Channel Mask (chanmask) – انتخاب کانالهای R، G، B، A برای پردازش.
-
Pixel Format (format) ⊞ – فرمت داده پیکسلی.
-
Use Input
-
8-bit fixed (RGBA)
-
sRGB 8-bit fixed (RGBA)
-
16-bit float (RGBA)
-
32-bit float (RGBA)
-
10-bit RGB + 2-bit Alpha fixed
-
16-bit fixed (RGBA)
-
11-bit float (RGB, Positive only)
-
16-bit float (RGB)
-
32-bit float (RGB)
-
8-bit fixed (Mono)
-
16-bit fixed (Mono)
-
16-bit float (Mono)
-
32-bit float (Mono)
-
8-bit fixed (RG)
-
16-bit fixed (RG)
-
16-bit float (RG)
-
32-bit float (RG)
-
8/16/32-bit fixed یا float (A)
-
8/16/32-bit fixed یا float (Mono+Alpha)
-
ورودیهای اپراتور (Operator Inputs)
-
Input 0: –
کانالهای Info CHOP
اطلاعات اضافی CPlusPlus TOP از طریق Info CHOP در دسترس است.
کانالهای عمومی TOP
-
resx – رزولوشن افقی (پیکسل).
-
resy – رزولوشن عمودی (پیکسل).
-
aspectx – نسبت افقی.
-
aspecty – نسبت عمودی.
-
depth – عمق آرایه ۲D یا ۳D (در صورت وجود).
-
gpu_memory_used – حافظه GPU مصرفشده.
کانالهای عمومی اپراتور
-
total_cooks – تعداد کل دفعات پردازش.
-
cook_time – مدت زمان آخرین پردازش (ms).
-
cook_frame – شماره فریم آخرین پردازش (نسبت به تایملاین کامپوننت).
-
cook_abs_frame – شماره فریم آخرین پردازش (نسبت به زمان مطلق).
-
cook_start_time – زمان شروع پردازش در فریم (ms).
-
cook_end_time – زمان پایان پردازش در فریم (ms).
-
cooked_this_frame – اگر در این فریم پردازش شد: 1.
-
warnings – تعداد هشدارها.
-
errors – تعداد خطاها.
