4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Houdini ApprenticeAdvent Calendar 2022

Day 5

POPで作成したParticleのうち何割かを消したいと言われたときの対処方法

Last updated at Posted at 2022-12-01

エフェクト屋さんが仕事でありがちなので

「Particleの数半分くらいにしたい。」とか「多いので量を減らしたい。増やしたい」
というのがチェックバックで起きますよね。

わざわざシミュレーションしなおしてまでしたくない小さな素材だったらちゃちゃっと減らして修正したいですよね:confused:

自分は最近だと「自分的に出したい量」より多めにParticleを出してシミュレーションしておいて、レンダリング前に減らしておいて早くリテイクに対応できるようにしてます(リードがやってて頭がいいと思いました:innocent:
そのときに使う数行のwrangleの紹介です
こんな感じでサクッと減らせます
2022-12-01_00h35_12.png


前提知識として、POPでParticleをEmitしたとき、無限寿命や尺内に死なないような寿命なら下記のように書いても大丈夫なのですが(ptnumが変わらないため)、

f@randomNum = rand(@ptnum);

if(f@randomNum < chf("thresh")){

    removepoint( 0, @ptnum);

}

途中で消したりするとptnumが変わるので、決まった半分を消すことができなくなります。。。
(LifeTime1とかで上のやつを実行していただければどういうことかわかりまする!!)


Particleはptnumとは別にIDをParticleに持たせれるので、それを使ってあげれば決まった半分を消しておくようにできます。
IDはここで作成するかどうか決めれます。
2022-12-01_00h19_35.png

こんな感じでpoint wrangleに記載してあげればいいです。

2022-12-01_00h16_20.png

2022-12-01_00h21_34.png

if(rand(i@id + chi("seed")) < chf("thresh")){

    removepoint( 0, @ptnum);

}

※seed をrandに足しているのはここでSeedをいじれば半分消すとしても、これは嫌だな。。。ってやつをSeedを変えることで変更できるからです。

すごいサクッとした記事で申し訳ないですが、結構仕事で使えるHoudiniの小技でしたー

もしゃこ

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?