#three.js
three.jsでパーティクルを作成して時間経過とともにパーティクルで作った形を変形するものを作ったのですが、色を変化させる部分で躓きまして
getImageDataで画像からパーティクルの位置と色情報を取得して、geometry.verticesに格納した値を変化させる事で変形は出来たのですが、色はgeometry.colorsに格納した値を変化させるだけでは上手くいかず、new THREE.Colorで作った色を都度geometry.colorsに適用するととてつもなく重くなります。
どなたか解決方法や参考になるサイトをお教え頂けますでしょうか。
一緒に読まれている質問
5 件の回答
three.js change particle color
でググるといろいろ出てくる。やってないからできるかどうか知らんけど。ちなみにJSエキスパート()ではない。
colorsプロパティのドキュメント見たら
「To signal an update in this array, Geometry.colorsNeedUpdate needs to be set to true.」
ってあるので、格納している色を変更したら上記をtrueに設定すると描画色が更新されるんじゃないですか?
three.js使ったことないので勘で言ってますが。
Re:3
これはすでに設定していて
geometry.colorsNeedUpdate = true;
色情報もgeometryに格納してるんですけどそれを再び表示?させるのが出来ないんです。
位置情報ならgeometry.verticesの値を都度更新するだけで良いんですが。
Re:4
ずばりっぽいのがありました。
https://stackoverflow.com/questions/34403807/threejs-geometry-colorsneedupdate-true-broken-since-r72
ライブラリ名とメソッド名と「not working」とかをキーワードにして検索すれば、問題の多くはstackoverflowで見つかると思うのでここで聞くより早いですよ。
Re:5
ありがとうございます!
まさにこれでした!
無事解決致しました!
stackoverflowチェックしてみます。