خلاصه (Summary)
Particle SOP برای ایجاد و کنترل حرکت ذرات (particles) در شبیهسازی سیستمهای ذرهای استفاده میشود. این سیستمها اغلب برای شبیهسازی پدیدههای طبیعی مانند باران و برف یا افکتهایی مانند آتشبازی و جرقهها کاربرد دارند. در TouchDesigner، نقاط هندسه ورودی بهعنوان موقعیت شروع ذرات استفاده میشوند. هر نقطه میتواند تحت تأثیر نیروهای خارجی مانند گرانش و باد قرار گیرد. ذرات میتوانند با اشیاء دیگر برخورد کرده و بازتاب پیدا کنند یا با رسیدن به صفحات محدود (X، Y، Z) متوقف شوند یا از بین بروند.
ذرات با سرعت و جهت اولیه از نرمالهای نقاط هندسه منبع ایجاد میشوند. این سرعت را میتوان با تغییر نرمالها با Point SOP، Facet SOP یا Script SOP کنترل کرد.
ذرات ویژگیهایی دارند که هندسه عادی ندارد، مانند velocity، life expectancy و age. این ویژگیها باید همراه هر ذره منتقل شوند تا شبیهسازی انجام شود.
Surface Attractors (ورودی چهارم) باعث میشوند ذرات به نواحی خاصی از یک سطح متصل شوند. هر ذره با یک id مشخص میشود که برای تعیین یک primitive هدف تصادفی و موقعیت u,v روی آن استفاده میشود و سرعت فعلی ذره بر اساس آن تنظیم میشود.
پارامترها – صفحه اصلی (Parameters – Page)
Source Group sourcegrp – محدود کردن انتشار ذرات به نقاط موجود در گروه مشخص.
پارامترها – صفحه State (Parameters – State Page)
Particle Type prtype – ⊞ – نحوه رندر ذرات:
Render as Lines lines – هر ذره به صورت یک خط ۲ نقطهای رندر میشود، طول خط بر اساس سرعت ذره تعیین میشود.
Render as Point Sprites pointprites – برای استفاده با Point Sprite MAT، هر ذره یک مربع پیکسلی است که همیشه به دوربین نگاه میکند.
Behavior behave – ⊞ – انتخاب بین انتشار ذرات از نقاط هندسه یا تغییر هندسه ورودی با رفتار Particle SOP:
Particle System psystem – ذرات به عنوان سیستم ذرهای از نقاط ورودی ایجاد میشوند.
Modify Source Geometry modify – هندسه ورودی تغییر میکند.
Compute Normals normals – ایجاد نرمال برای هندسه (فقط هنگام Modify Source Geometry).
Point Reuse ptreuse – ⊞ – نحوه استفاده مجدد از حافظه داخلی نقاط هنگام ایجاد یا حذف ذرات:
Reuse Points in Loop loop
Reuse First Available Point unused
Don’t Reuse Points none
Preroll Time timepreroll – تعیین ثانیههایی که شبیهسازی باید قبل از اولین فریم نادیده گرفته شود.
Time Inc timeinc – مشخص میکند SOP چند بار در هر فریم اجرا شود.
Max Steps maxsteps – محدود کردن محاسبات موقعیت ذرات برای تعاملات.
Jitter Births jitter – پراکنده کردن موقعیت ذرات هنگام تولد.
Accurate Moves accurate – محاسبه مسیر ذرات برای دقت بالاتر بین فریمها.
Remove Unused Points rmunused – حذف نقاط استفاده نشده برای بهینهسازی.
Attractor Use attractmode – ⊞ – انتخاب حالت جذب برای Surface Attractors:
All Points all – همه نقاط جذب تمام ذرات را تحت تأثیر قرار میدهند.
Single Point per Particle single – هر ذره یک نقطه جذب اختصاصی دارد.
Reset reset – نگه داشتن سیستم ذرهای در حالت ریست و عدم انتشار ذرات.
Reset Pulse resetpulse – ریست فوری سیستم ذرهای.
پارامترها – صفحه Forces (Parameters – Forces Page)
External Force external – ⊞ – نیروهای گرانش روی ذرات.
Wind wind – ⊞ – نیروهای باد روی ذرات.
Turbulence turb – ⊞ – دامنه نیروهای آشفته در هر محور:
X turbx، Y turby، Z turbz
Turb Period period – دوره تغییرات تلاطم.
Seed seed – بذر تصادفی برای شبیهسازی ذرات.
پارامترها – صفحه Particles (Parameters – Particles Page)
Add Particle ID doid – اضافه کردن شناسه به هر ذره.
Add Mass Attribute domass – محاسبه جرم ذره.
Mass mass – جرم نسبی ذره.
Add Drag Attribute dodrag – محاسبه ضریب مقاومت ذره.
Drag drag – مقاومت ذره.
Birth birth – تعداد ذرات تولد در ثانیه.
Life Expect life – طول عمر ذره (ثانیه).
Life Variance lifevar – تغییرات طول عمر ذره.
Alpha Speed alpha – شفافیت ذره بر اساس سرعت.
Surface Attraction subattract – کنترل جذب به سطح ورودی چهارم.
Birth Count birthcount – تعداد ذرات تولید شده در هر ضربه تولد.
Birth birthpulse – ایجاد دستی ذرات.
پارامترها – صفحه Limits (Parameters – Limits Page)
+ Limit Plane limitpos / – Limit Plane limitneg – صفحات محدود که ذرات هنگام رسیدن به آنها میمیرند یا بازتاب پیدا میکنند.
Hit Behavior hit – ⊞ – رفتار برخورد:
Die on Contact die
Bounce on Contact bounce
Stick on Contact stick
Gain Tangent gaintan / Gain Normal gainnorm – کنترل انرژی از دست رفته یا کسب شده هنگام برخورد.
Split splittype / Min/Max Splits split / Split Velocity splitvel / Velocity Variance splitvar – کنترل تقسیم ذرات و سرعت آنها.
Operator Inputs
Input 0 تا Input 3
Info CHOP Channels
num_points، num_prims، num_particles – تعداد نقاط، primitive و ذرات.
total_cooks، cook_time، cook_frame و سایر کانالها برای بررسی عملکرد SOP.
