Use a simple script to achieve powder pile | Maya nParticle简单脚本实现粒子堆叠


Youtube

Maya nParticle only calculates friction/stickness between particles and rigid bodies, not friction is encountered between particles. My guess is the algorithm complexity is too high. Anyway there is two relative easy ways to fake the effect, according to my searching.

想要用一个一包糖粒堆在物体(对又是它..)上的片段,发现Maya的nParticle只计算粒子和Rigid body的摩擦力不计算粒子和粒子间的摩擦力(想来是算法复杂度太高了),所以不管怎么搞最终都会摊成大烧饼,并且还会不停的抽搐.. 查了下大概有两个相对简单的方法

1. hold particles with a invisible rigid body. 2. Use RealFlow, which seems to have much more handy control over particles

I’m not happy with either. 1 is lame. 2 too much trouble, have to get hang of another environment. If I must do scripting, I choose to learn mel.

So the algorithm is:

It’s unlikely to mess with friction as I guessed above. I tried to modify per particle mass to let them stuck in the space. Yea that works but they tend to be headbutted by other particles and flying around.. for science. Later I googled out it’s possible to control force field per particle, with attribute named “Field name”_”option name”. That is to say adding attribute “gravityField1_magnitude” to nParticle2 will grant you control over per particle gravity from the field.

On creation:

[php]
global int $freezeCap=5; //be completely frozen after the cap rounds
global int $gravityPP=500;
global float $dragPP=100;
global float $accelerationTrigger=15; //the speed parameter to trigger ‘I’m free again!", which leads to free droping.
global int $n[100000]; //how many times have the particle been locked
global int $preVel[100000]; //velocity of last frame
global int $locked[100000];

nParticleShape4.dragField1_magnitude=0;
nParticleShape4.gravityField1_magnitude=$gravityPP;

global int $init=1;
if($init==1) {
int $i;
for($i=0;$i<100000;$i++) {
$n[$i]=0;
$locked[$i]=0;
}
$init=0;
}
[/php]

Before dynamics:
[php]
int $id=nParticleShape4.particleId;
float $vel=abs(nParticleShape4.velocity);

//print("nParticleShape2.velocity "+$nParticleShape2.velocity+"\n");

if($vel>$preVel[$id]+$accelerationTrigger) {
$n[$id]=0;
nParticleShape4.dragField1_magnitude=0; //If it’s free again, unlock and erase record
}
else {
$freezeFact=$n[$id]/$freezeCap; //progress bar of locking
if($freezeFact>1)
$freezeFact=1;
$n[$id]+=1;
nParticleShape4.dragField1_magnitude=$freezeFact*$dragPP; //increase drag force depending on locking level
nParticleShape4.gravityField1_magnitude=$gravityPP*(1-$freezeFact)*(1-$freezeFact); //parabola is better according to experiment
nParticleShape4.velocity=<<0,0,0>>;
}

$preVel[$id]=nParticleShape4.velocity;
[/php]

The script is not bad to me.. adjustable parameters are handy. Time efficiency is acceptable (as a former ACMer, I can confirm this is O(n), can’t be better). 20 million particles * 100 frames cost my i7 half an hour. Not perfect but enough for bragging.
1. 弄个透明的动画的rigid body来把粒子圈起来。 2. 用RealFlow,我只用RealFlow模拟水,但是显然那它对粒子的控制比Maya厉害得多。

两个方法我都不高兴,1太不屌爆,2太麻烦,要做很多熟悉另一个环境的工作,且要写脚本,所以不如来学下mel。下了本书叫Maya Python — for Games and Film,翻了一百页发现Python在Maya上基本是庞大的workflow中工程师为了其他人方便写的maya程序,并且也要有mel基础,不是我要的。

总之,思路是:

想要计算摩擦力显然是不现实的,说过了。我先通过改质量的途径让粒子满足条件时失去质量以停在原地不受重力影响,停是能停住但是会被别的particle撞飞.. 非常科学。后来查到可以使用 <力场名>_<属性名> 的方式控制Per Particle的行为,即,给nParticle2添加名为gravityField1_magnitude的attribute程序就会使用它来控制它受到重力场1的magnitude。然后通过DragField让particle稳定。我在注释里详细说。

粒子生成时脚本:

[php]
global int $freezeCap=5; //be completely frozen after the cap rounds
global int $gravityPP=500;
global float $dragPP=100;
global float $accelerationTrigger=15; //the speed parameter to trigger ‘I’m free again!", which leads to free droping.
global int $n[100000]; //how many times have the particle been locked
global int $preVel[100000]; //velocity of last frame
global int $locked[100000];

nParticleShape4.dragField1_magnitude=0;
nParticleShape4.gravityField1_magnitude=$gravityPP;

global int $init=1;
if($init==1) {
int $i;
for($i=0;$i<100000;$i++) {
$n[$i]=0;
$locked[$i]=0;
}
$init=0;
}
[/php]

动态前的脚本:

[php]
int $id=nParticleShape4.particleId;
float $vel=abs(nParticleShape4.velocity);

//print("nParticleShape2.velocity "+$nParticleShape2.velocity+"\n");

if($vel>$preVel[$id]+$accelerationTrigger) {
$n[$id]=0;
nParticleShape4.dragField1_magnitude=0; //If it’s free again, unlock and erase record
}
else {
$freezeFact=$n[$id]/$freezeCap; //progress bar of locking
if($freezeFact>1)
$freezeFact=1;
$n[$id]+=1;
nParticleShape4.dragField1_magnitude=$freezeFact*$dragPP; //increase drag force depending on locking level
nParticleShape4.gravityField1_magnitude=$gravityPP*(1-$freezeFact)*(1-$freezeFact); //parabola is better according to experiment
nParticleShape4.velocity=<<0,0,0>>;
}

$preVel[$id]=nParticleShape4.velocity;
[/php]

个人感觉这个还不错,有很多参数可以控制,效率也还行(前ACMer表示这个就是O(n)..不能再低了),200万粒子100帧i7跑半个小时。显然不完美,蒙人没问题。

6,743 thoughts on “Use a simple script to achieve powder pile | Maya nParticle简单脚本实现粒子堆叠

  1. Bitcoin casinos Australia

    This is really fascinating, You are an excessively
    skilled blogger. I’ve joined your feed and look ahead to in the hunt for extra
    of your fantastic post. Additionally, I’ve shared your
    web site in my social networks

    Reply
  2. vn22vip.com

    This is a very informative post about online casinos and betting platforms.
    I especially liked how it explains the importance of choosing
    a licensed site before signing up.

    Many players often ask where they can find reliable gaming platforms with fair odds and smooth payouts.
    From what I’ve seen, checking platforms like vn22vip helps users compare features, bonuses, and overall experience.

    Thanks for sharing these insights — they’re helpful
    for both beginners and experienced bettors.

    Reply
  3. купить кокаин

    Наркотики разламывают эндосимбионт равно психику.
    Стимуляторы (снежок, мефедрон, амфетамин) сжигают запас тела, зажигая инфаркты,
    предсмертную гипертермию, гниение сосудов равно
    паранойю. Каннабиноиды (гашиш, спайсы) водят для полоумию, отказу почек равно психозам.

    Опиоиды (опиоид, физептон)
    обездвиживают чухалка, разгоняют гниение
    материалов а также беспощадную ломку.
    Финал использования ПАВЛИНЧИК — уступка
    организаций, фатуизм равным образом смерть.

    Reply
  4. купить мефедрон

    Ядовитый дурман рушат организм и психику.

    Стимуляторы (кокаин, мефедрон, эфедрин) сжигают ресурсы чиксачка, пробуждая инфаркты,
    смертельную гипертермию, тление
    кровеносный сосуд и паранойю. Каннабиноиды (гашиш,
    спайсы) водят ко полоумию,
    отказу почек равно психозам.
    Опиоиды (опиоид, физептон) обездвиживают дыхание, поднимают гниение тканей а также
    беспощадную ломку. Итог использования ПАВЛИНЧИК — уступка органов,
    слабоумие а также смерть.

    Reply
  5. check my reference

    I simply couldn’t leave your web site before suggesting that I really
    enjoyed the standard info an individual provide on your guests?
    Is gonna be back incessantly in order to check up on new posts

    Reply
  6. 울산출장안마

    저는 외근이 많은 편이라 울산출장안마를 자주 이용하는데,
    이 포스팅에서 새로운 팁을 알게 됐어요.
    울산1인샵 곳마다 스타일이 이렇게 다른 줄 몰랐네요.

    나중에 울산안마를 찾을 때 이 글을 참고할게요.

    좋은 글 감사합니다!
    완전 강추예요!

    Reply
  7. click here

    Your style is unique in comparison to other people I have read stuff from.
    Many thanks for posting when you’ve got the opportunity, Guess I will just bookmark
    this site.

    Reply
  8. https://Bbarlock.com/index.php/Boho_bydlení:_Když_se_minimalismus_nudí_a_vy_Máte_rádi_věci_s_příběhem

    Naprawdę dobry materiał. Dużo konkretnych informacji.
    Dziękuję za podzielenie się. Zapisuję do ulubionych.
    Zgadzam się – sprawa aranżacji bywa trudna. Wreszcie konkrety.

    Szczerze przydatne. Szukałam czegoś takiego już jakiś czas.
    Super robota!

    Also visit my homepage :: https://Bbarlock.com/index.php/Boho_bydlení:_Když_se_minimalismus_nudí_a_vy_Máte_rádi_věci_s_příběhem

    Reply
  9. blacksprut сайт

    Hey there! I’ve been following your website for some time now and finally got the
    bravery to go ahead and give you a shout out from Porter
    Tx! Just wanted to say keep up the excellent job!

    Reply
  10. E星体育

    Hey! This is my first visit to your blog! We are a group of volunteers and
    starting a new initiative in a community in the same niche.
    Your blog provided us valuable information to work on. You have done
    a marvellous job!

    Reply
  11. about

    Terrific post however I was wanting to know if you could write a litte more on this topic?
    I’d be very grateful if you could elaborate a little bit more.
    Many thanks!

    Reply
  12. Pyblichnaya kadastrovaya karta_kyoa

    Люди помогите А в росреестре ждать по три недели Кадастровый номер вбить Короче, нашел крутой инструмент — росреестр публичная кадастровая карта быстрый поиск Нашел всё за 10 минут В общем, там и карта и данные — публичная кадастровая карта [url=https://publichnaya-kadastrovaya-karta-jkl.ru]публичная кадастровая карта[/url] Пользуйтесь нормальной картой Перешлите тому кто ищет участок

    Reply
  13. Pyblichnaya kadastrovaya karta_slEr

    Слушайте кто участки ищет То карта виснет Границы посмотреть Короче, работает быстро и понятно — публичная кадастровая карта новая с просмотром Скачал выписку за секунду В общем, вся инфа вот здесь — публичная кадастровая карта росреестр 2025 [url=https://publichnaya-kadastrovaya-karta-def.ru]https://publichnaya-kadastrovaya-karta-def.ru[/url] Пользуйтесь нормальной картой Перешлите тому кто ищет участок

    Reply
  14. Vivod iz zapoya na domy_gnOn

    Слушайте что расскажу. Жесть случилась полная. Человек уже вторые сутки в штопоре. Дети не спят ночами. В диспансер везти — учёт на всю жизнь. Короче, нормальные врачи нашлись — вывести из запоя на дому качественно. Приехали через час. В общем, вся инфа вот здесь — вывести из запоя капельница на дому цена [url=https://vyvod-iz-zapoya-na-domu-samara-stu.ru]https://vyvod-iz-zapoya-na-domu-samara-stu.ru[/url] Не тяните. Скиньте другу в беде.

    Reply
  15. Gordon Law

    Hey there! Do you know if they make any plugins to safeguard against hackers?
    I’m kinda paranoid about losing everything I’ve worked
    hard on. Any suggestions?

    Reply
  16. купить гашиш

    Наркотики ломают организм и еще психику.
    Катализаторы (снежок, мефедрон, эфедрин) сжигают резерв чиксачка, вызывая инфаркты, предсмертную гипертермию, тление лимфатический сосуд и паранойю.
    Каннабиноиды (гашиш, спайсы) ведут буква
    полоумию, отказу почек и психозам.

    Опиоиды (опиоид, метадон) обездвиживают чухалка, разгоняют тление мануфактур и беспощадную ломку.

    Финал приложения ПАВЛИНЧИК — уступка органов, фатуизм равным образом смерть.

    Reply
  17. Vivod iz zapoya na domy_uvKt

    Народ выручайте. Попал я в переплёт конкретный. Человек уже пятые сутки в штопоре. Жена в слезах. Скорая не едет. Короче, единственное что реально помогло — профессиональное выведение из запоя капельницей. Поставили систему. В общем, смотрите сами по ссылке — вывод из запоя самара [url=https://vyvod-iz-zapoya-na-domu-samara-jkl.ru]вывод из запоя самара[/url] Каждая минута дорога. Скиньте другу в беде.

    Reply
  18. Pyblichnaya kadastrovaya karta_pmea

    Ребята кто с землей То вообще ничего не показывает Соседей проверить Короче, работает быстро и понятно — росреестр публичная кадастровая карта быстрый поиск Увидел границы и форму участка В общем, там и карта и данные — кадастровая стоимость онлайн [url=https://publichnaya-kadastrovaya-karta-mno.ru]https://publichnaya-kadastrovaya-karta-mno.ru[/url] Не парьтесь с росреестром Перешлите тому кто ищет участок

    Reply
  19. Look at Security Site Today

    What a thought-provoking read! I never fully considered the extent of VPN infrastructure needed worldwide.
    The opportunity to manage private VPN to secure automation is invaluable.
    I’ve shared this post with others looking to protect
    their identity.

    Reply
  20. купить кокаин

    Ядовитый дурман разламывают организм и еще
    психику. Катализаторы (кокаин, мефедрон, эфедрин)
    сжигают ресурсы тела, возбуждая инфаркты, смертельную
    гипертермию, гниение контейнеров также паранойю.
    Каннабиноиды (ямба, спайсы) ведут к полоумию, отказу почек равно психозам.

    Опиоиды (героин, физептон) обездвиживают чухалка,
    давать начало тление материй а также
    суровую ломку. Итог потребления ПАВЛИНЧИК — уступка органов, слабоумие и смерть.

    Reply
  21. 世界杯竞猜官方网

    I was pretty pleased to discover this page. I want
    to to thank you for ones time due to this wonderful
    read!! I definitely liked every part of it and i also have you book-marked to check out new things on your web site.

    Reply
  22. домашний уют

    I loved as much as you will receive carried out right here.

    The sketch is attractive, your authored subject
    matter stylish. nonetheless, you command get got an shakiness over that you wish be delivering the following.
    unwell unquestionably come more formerly again as exactly the same nearly a lot
    often inside case you shield this increase.

    Reply
  23. Https://Dik-Trade.Ru

    Sachlicher Artikel. Viele nützliche Informationen. Großes Lob für den Beitrag.

    Ich werde öfter reinschauen.
    Genau – die Frage der Raumgestaltung wird oft herausfordernd.
    Gut, dass es jemand erklärt.
    Echt praxisnah. Ich suche schon nach so etwas genau danach gesucht.

    Danke!

    Here is my website https://Dik-Trade.Ru

    Reply
  24. wow 3.3.5 hd client

    Download the free Gemstone WoW HD client — a fully enhanced WotLK 3.3.5a experience with HD textures, improved character models, and
    a pre-configured realmlist. No setup needed, just download and
    play. Available through three fast mirrors: Super CDN for the best
    speed, Mega as a backup, and Torrent with web seeding for pause and resume
    support. The 36 GB client runs on Windows 10 and 11 and gets you into Northrend within minutes.

    Create a free account while it downloads and jump straight in.

    Reply
  25. 世界杯赔率网站

    Attractive element of content. I just stumbled upon your website and in accession capital to claim that I get actually loved account your weblog posts.
    Anyway I’ll be subscribing for your feeds and even I achievement
    you get entry to constantly rapidly.

    Reply
  26. redmi watch 3 active release date

    Greetings! This is my first comment here so I just wanted
    to give a quick shout out and tell you I truly
    enjoy reading your articles. Can you suggest any other blogs/websites/forums that go
    over the same topics? Appreciate it!

    Reply
  27. webpage

    Thank you for sharing your info. I really appreciate your
    efforts and I am waiting for your further post thanks once again.

    Reply
  28. Cassandra

    Hallo, ich bin beim Stöbern hier gelandet und mir ist aufgefallen, dass man hier echt was mitnimmt. Ich bin gerade dabei, mein Haus und ich suche nach Inspiration. Viele Grüße.
    Spannender Thread. Ich möchte hinzufügen, dass die richtige Farbgebung die Basis von allem ist. Ich empfehle, sich nicht zu hetzen.

    Reply
  29. 足球软件app下载

    What i do not understood is in fact how you’re now not really much more neatly-appreciated than you might
    be now. You are very intelligent. You recognize thus considerably with regards to this
    topic, made me in my opinion believe it from a lot of various angles.

    Its like women and men don’t seem to be interested until it’s
    one thing to accomplish with Girl gaga! Your own stuffs
    great. All the time maintain it up!

    Reply
  30. Betty

    Dzień dobry, trafiłem tu przypadkiem i chcę powiedzieć, że jest tu sporo wartościowych treści. Sama od jakiegoś czasu zmieniam wystrój i takie porady bardzo się przydają. Miłego dnia wszystkim.
    Dobry temat. Z mojego doświadczenia aranżacja wnętrza ma ogromne znaczenie. Warto poświęcić temu czas.

    Reply
  31. Pyblichnaya kadastrovaya karta_iroa

    Слушайте кто участки смотрит То карта тормозит Границы посмотреть Короче, нашел крутой инструмент — официальная публичная кадастровая карта с выписками Скачал выписку за секунду В общем, жмите чтобы не потерять — пкк росреестр официальный сайт [url=https://publichnaya-kadastrovaya-karta-jkl.ru]пкк росреестр официальный сайт[/url] Пользуйтесь нормальной картой Перешлите тому кто ищет участок

    Reply
  32. Pyblichnaya kadastrovaya karta_wyEr

    Ребята кто с землей А в росреестре очереди и бумажки Кадастровый номер вбить Короче, работает быстро и понятно — публичная кадастровая карта новая с просмотром Скачал выписку за секунду В общем, смотрите сами по ссылке — кадастровый карта земельного участка [url=https://publichnaya-kadastrovaya-karta-def.ru]кадастровый карта земельного участка[/url] Не парьтесь с росреестром Перешлите тому кто ищет участок

    Reply
  33. Pyblichnaya kadastrovaya karta_smea

    Слушайте кто участки ищет А в росреестре очереди и бумажки Категорию земли уточнить Короче, единственный сервис который не врет — публичная кадастровая карта новая с просмотром Нашел всё за 10 минут В общем, там и карта и данные — публичная кадастровая карта новая [url=https://publichnaya-kadastrovaya-karta-mno.ru]https://publichnaya-kadastrovaya-karta-mno.ru[/url] Не парьтесь с росреестром Перешлите тому кто ищет участок

    Reply
  34. Vivod iz zapoya na domy_tfOn

    Самарцы привет. Столкнулся с такой бедой. Муж просто пропадает. Дети не спят ночами. Платные клиники просят бешеные деньги. Короче, нормальные врачи нашлись — вывод из запоя дешево и сердито. Приехали через час. В общем, вся инфа вот здесь — вывод из запоя наркология [url=https://vyvod-iz-zapoya-na-domu-samara-stu.ru]вывод из запоя наркология[/url] Не надейтесь на авось. Перешлите тому кому надо.

    Reply
  35. Jane

    Hi to every , since I am truly keen of reading this
    blog’s post to be updated regularly. It includes good information.

    Reply
  36. retromirabeau.fr

    Spot on with this write-up, I really believe this web site needs far more attention. I’ll probably be back again to read more, thanks for the information!

    Reply
  37. http://www.Freedomx.jp/

    Klasse Artikel. Zahlreiche nützliche Inspirationen. Vielen Dank dass du dein Wissen teilst.
    Ich empfehle die Seite gerne weiter.
    Du hast recht – die Frage des Wohnstils wird oft herausfordernd.
    Gut, dass es jemand erklärt.
    Sehr inspirierend. Ich suche schon nach genau so einem Beitrag seit einiger Zeit gesucht.
    Danke!

    my page … http://www.Freedomx.jp/

    Reply
  38. https://Www.Facebook.com/Tapczanycom/

    Dzień dobry, przeglądałem forum i stwierdzam, że dużo się dowiedziałem. Sam ostatnio urządzam mieszkanie i każda wskazówka jest na wagę złota. Miłego dnia wszystkim.
    Wartościowy wątek. Moim zdaniem wybór kolorystyki ma ogromne znaczenie. Polecam się nie spieszyć.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *