Unityのバージョン
Unity 2019.2.11f1 (64-bit)
以下のサイトでパーティクルシステムのエミッションの設定の方法はわかったのですが
[Unity5 C#] パーティクルの数をスクリプト(コード)から動的に変更
https://ameblo.jp/punini-p/entry-12258860305.html
パーティクルシステムのエミッションの値を取得し
編集を加え、再度設定する方法がわかりませんでした。
例
ParticleSystem ps = GetComponent<ParticleSystem>();
var em = ps.emission;
em.enabled = true;
var max_rate_ot = em.rateOverTime;
上記の後、例えば
**var rate = max_rate_ot * ((float)MAX_HP / (float)init_HP); **
(MAX_HPとinit_HPはint型)
とすると以下のエラーがでてしまいます。
rateOverTimeは、float型だと思うのですが
どうやったら取得してその値を利用し、計算したりできますでしょうか?
上記は、ゲームで現在のHPの多さによって
HPが多ければ、初期設定のエミッションの値を最大値として
エフェクトの粒子の数を変更したい時に使用しています。
よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/10 04:25