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跑半个小时。显然不完美,蒙人没问题。

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

  1. alkoholizem_xiKl

    Dolgo sem iskal pravo rešitev. Ko sem prvič slišal za zdravljenje alkoholizma po metodi Dr Vorobjev centra, sem bil skeptičen. Ampak ko sem spoznal ljudi, ki jim je uspelo — ugotovil sem, da to res deluje. Odvisnost od alkohola je strašna bolezen. In najhuje je, da mnogi ne vedo, kam se obrniti. Zato vam želim pokazati vse tehnične podrobnosti in uradne informacije, ki so na voljo na tej povezavi: alkoholizem [url=alkoholizma-zdravljenje-si.com]alkoholizem[/url]. Tam boste našli vse potrebne informacije.

    Po dolgih letih sem končno našel rešitev. Če se soočate s podobno težavo — ne odlašajte. Srečno vsem na tej poti!

    Reply
  2. kinderenmetjeroen.nl

    Does your blog have a contact page? I’m having trouble locating it but, I’d like to send you
    an e-mail. I’ve got some ideas for your blog you might be interested in hearing.

    Either way, great website and I look forward to seeing it improve over
    time.

    Reply
  3. ซีรี่ย์ใหม่ล่าสุด

    Can I simply just say what a relief to uncover somebody who genuinely knows what they are talking about online.
    You certainly understand how to bring a problem to light and make it important.
    More and more people must read this and understand
    this side of the story. I was surprised that you’re not more popular since you surely have
    the gift.

    Reply
  4. Nannie

    Just got back from some turner falls cabins and honestly, the experience was incredible!
    We stayed in one of those cabins in davis oklahoma
    with hot tubs with a private hot tub and it was the
    highlight of our trip after exploring the waterfall
    area lodging (Nannie).

    The turner falls oklahoma cabins we found had all the
    amenities and the views were stunning. Would absolutely book again these turner falls cabins with hot tubs for anyone planning a getaway!

    Reply
  5. Clay

    Świetny tekst. Wiele wartościowych wskazówek.
    Super za ten materiał. Czekam na więcej.

    Masz rację – kwestia urządzania wnętrz bywa trudna.

    Wreszcie konkrety.
    Bardzo pomocne. Szukałam takich informacji od dawna.

    Dziękuję!

    Also visit my blog post: Clay

    Reply
  6. ดูหนังออนไลน์

    Have you ever considered about including a little bit more than just
    your articles? I mean, what you say is fundamental and
    everything. However think about if you added some great graphics or videos to give
    your posts more, “pop”! Your content is excellent but with pics
    and clips, this site could definitely be one of the most beneficial in its niche.
    Superb blog!

    Reply
  7. Vivod iz zapoya na domy_aooa

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

    Reply
  8. Vivod iz zapoya na domy_oxpn

    Блин, человек просто не просыхает. Руки опускаются. Наркологическая клиника с выездом — круглосуточный вывод из запоя и стабилизация. Не шарлатаны какие-то. Короче, вот вам информация — вывод из запоя цены воронеж [url=https://vyvod-iz-zapoya-na-domu-voronezh-bvc.ru]вывод из запоя цены воронеж[/url] Не ждите чуда. Сам через это прошел, чем потом собирать по кускам. Очень советую эту контору.

    Reply
  9. Vivod iz zapoya na domy_feMi

    Нифига себе проблема, родственники маются. Как есть — реальное выведение из запоя без кодировки. Врачи с допуском. Между нами, там все подробно расписано — вывод из запоя на дому цена [url=https://vyvod-iz-zapoya-na-domu-voronezh-xrt.ru]вывод из запоя на дому цена[/url] Хватит надеяться на авось. Поверьте моему опыту, чем потом скорую вызывать. Рекомендую эту наркологическую клинику.

    Reply
  10. Vivod iz zapoya na domy_yaOt

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

    Reply
  11. Vivod iz zapoya na domy_odSn

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

    Reply
  12. Vivod iz zapoya na domy_toOr

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

    Reply
  13. Fashion

    Hi there! I know this is sort of off-topic but I needed to
    ask. Does managing a well-established blog such as yours require a massive amount work?
    I’m brand new to operating a blog however I do write in my
    journal daily. I’d like to start a blog so I will be able to share my own experience and thoughts online.
    Please let me know if you have any kind of recommendations or tips for brand new aspiring bloggers.
    Appreciate it!

    Reply
  14. a Levels math Tuition

    OMT’ѕ bite-sized lessons protect ɑgainst overwhelm,
    allowing gradual love f᧐r math to flower and influence constant test preparation.

    Unlock уour kid’s full capacity in mathematics ᴡith OMT Math Tuition’ѕ expert-led classes,
    customized tߋ Singapore’s MOE curriculum fⲟr primary, secondary, and JC students.

    Ꭺs mathematics underpins Singapore’s reputation fоr quality in worldwide benchmarks ⅼike PISA,
    math tuition is essential tⲟ unlocking a child’ѕ
    potential and securing academic advantages
    in this core subject.

    Math tuition іn primary schuool bridges spaces іn class knowing, ensuring
    trainees grasp complicated topics ѕuch as geometry and data analysis Ьefore
    the PSLE.

    Structure confidence tһrough constant tuition assistance іs crucial,
    аѕ Ο Levels сan bе difficult, and confident trainees do much bettеr under pressure.

    Planning fоr the changability of A Level questions, tuition develops flexible analytical strategies fοr real-tіme
    test situations.

    OMT establishes іtself apart wіth а proprietary curriculum tһat expands MOE content
    by consisting of enrichment tasks targeted аt establishing mathematical intuition.

    OMT’ѕ system urges goal-setting ѕia, tracking milestones іn the direction օf attaining gгeater qualities.

    Math tuition influences confidence via success in ѕmall milestones, driving Singapore
    trainees tοward generɑl exam triumphs.

    Ꮋave a ⅼook аt my web-site – a Levels math Tuition

    Reply
  15. asrrss セクシーランジェリー レビュー

    すべての気になっていた点が解消できて大変助かりました。商品に記載されていたサイズの誤りを修正し、正確な数値を公開している点が非常に良心的です。繊細な部位の造形クオリティに強いこだわりが感じられます。超リアルな質感のボディメイクオプションを選択することが可能です。追加で必要となる費用や製作工程の違いまで事前に明記されています

    Reply
  16. 링크모음

    Nice blog here! Also your web site loads up fast! What host are
    you using? Can I get your affiliate link to your host? I wish my web site loaded up
    as quickly as yours lol

    Reply
  17. 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 secure 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
  18. useful reference

    Spot on with this write-up, I seriously believe that this site needs
    a lot more attention. I’ll probably be returning to see more, thanks for the information!

    Reply
  19. Vivod iz zapoya na domy_dbMi

    Да уж, родственники маются. Как есть — нужен нормальный вывод из запоя на дому. Ребята работают чисто. Между нами, вот нормальный расклад — вывод из запоя на дому цена [url=https://vyvod-iz-zapoya-na-domu-voronezh-xrt.ru]вывод из запоя на дому цена[/url] Хватит надеяться на авось. Поверьте моему опыту, чем труп из квартиры выносить. Рекомендую эту наркологическую клинику.

    Reply
  20. Vivod iz zapoya na domy_dopn

    Сил уже нет, родственники на нервах. Что делать — непонятно. Наркологическая клиника с выездом — срочный вывод из запоя без лишних вопросов. Там реальные врачи. Короче, смотрите сами по ссылке — вывод из запоя круглосуточно [url=https://vyvod-iz-zapoya-na-domu-voronezh-bvc.ru]вывод из запоя круглосуточно[/url] Не ждите чуда. Лучше решить проблему сейчас, чем потом собирать по кускам. Очень советую эту контору.

    Reply
  21. เว็บดูหนังฟรี

    Hi there! This post couldn’t be written any better! Reading through this article reminds me of
    my previous roommate! He continually kept preaching about this.
    I most certainly will send this post to him. Fairly certain he’s going to have a
    great read. Many thanks for sharing!

    Reply
  22. alkoholizem_lkKl

    Veliko sem prebral in slišal o tem. Ko sem prvič slišal za zdravljenje alkoholizma po metodi Dr Vorobjev centra, sem bil poln dvomov. Ampak ko sem prebral izkušnje anderen — ugotovil sem, da to res deluje. Odvisnost od alkohola je strašna bolezen. In najhuje je, da ne poznajo dobrih možnosti zdravljenja. Zato vam želim pokazati vse tehnične podrobnosti in uradne informacije, ki so na voljo na tej povezavi: zdravljenje alkoholizma [url=alkoholizma-zdravljenje-si.com]zdravljenje alkoholizma[/url]. Več o tem si preberite na spodnji povezavi.

    Meni je ta pristop pomagal. Če se soočate s podobno težavo — vzemite si čas in preberite. Vsak dan je nova priložnost.

    Reply
  23. video ngentot

    Terrific article! That is the type of information that should be shared across the net.
    Disgrace on Google for no longer positioning this publish
    higher! Come on over and consult with my website . Thanks =)

    Reply
  24. Vivod iz zapoya na domy_jroa

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

    Reply
  25. kp88 rocks

    Hello are using WordPress for your blog platform? I’m new to the
    blog world but I’m trying to get started and create
    my own. Do you need any html coding knowledge to make your own blog?
    Any help would be really appreciated!

    Reply
  26. Vivod iz zapoya na domy_wzOt

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

    Reply
  27. Vivod iz zapoya na domy_sbSn

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

    Reply
  28. شرط بندی فوتبال جام جهانی

    I was curious if you ever thought of changing the page layout of your website?

    Its very well written; I love what youve got to say. But maybe you could a little more in the way of content so people could connect with it better.
    Youve got an awful lot of text for only having 1 or 2 pictures.
    Maybe you could space it out better?

    Reply
  29. ข่าวสังคม

    I know this if off topic but I’m looking
    into starting my own blog and was wondering what all is required to get set up?

    I’m assuming having a blog like yours would cost a pretty penny?
    I’m not very web smart so I’m not 100% sure. Any recommendations or
    advice would be greatly appreciated. Cheers

    Reply
  30. alkoholizem_tgkr

    выучить английски [url=https://www.pg21.ru/predel-sovershenstva-chto-skryvayetsya-za-urovnem-c2-v-angliyskom-yazyke]выучить английски[/url]

    Reply
  31. 세종출장마사지

    이렇게 좋은 정보 오랜만에 봤네요.

    세종출장안마에 대해 이렇게 친절하게 정리해 주신
    분은 처음이에요.
    제일 세종1인샵의 후불제 시스템이 마음에
    들었어요.
    세종안마 고민하시는 분들께 이 포스팅을 공유할게요.

    Also visit my blog 세종출장마사지

    Reply
  32. www.Unipartners.kr

    Hey, ich bin hier durch Zufall gelandet und ich muss zugeben, dass das Thema hervorragend beschrieben ist. Ich selbst bin gerade dabei, mein Zuhause neu zu gestalten und jeder Ratschlag hilft mir weiter. Einen schönen Tag euch allen.
    Wertvoller Beitrag. Ich möchte hinzufügen, dass die Farbwahl die Basis von allem ist. Es lohnt sich, dafür Zeit zu nehmen.

    Also visit my web-site … http://Www.Unipartners.kr/index.php?document_srl=748204&mid=board_vUuI82

    Reply
  33. Best crypto casino

    hello!,I really like your writing very a lot! share we communicate more approximately
    your article on AOL? I need an expert in this house to unravel my problem.
    May be that’s you! Taking a look ahead to see you.

    Reply
  34. Vivod iz zapoya na domy_rtOr

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

    Reply
  35. Tracy

    Cześć, przeglądałem forum i stwierdzam, że dużo się dowiedziałem. Sam od jakiegoś czasu urządzam mieszkanie i takie porady bardzo się przydają. Pozdrawiam forumowiczów.
    Dobry temat. Z mojego doświadczenia aranżacja wnętrza naprawdę robi różnicę. Lepiej raz a dobrze.

    Reply
  36. Vivod iz zapoya na domy_cjMi

    Нифига себе проблема, человек просто в штопоре. Без вариантов — адекватный вывод из запоя цены и условия. Тут тебе не частная лавочка. Короче говоря, там все подробно расписано — вывод из запоя цены [url=https://vyvod-iz-zapoya-na-domu-voronezh-xrt.ru]вывод из запоя цены[/url] Организм не резиновый. Лучше один раз дернуться, чем потом скорую вызывать. Рекомендую эту наркологическую клинику.

    Reply

Leave a Reply

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