LoginSignup
1
0

More than 1 year has passed since last update.

three.jsでverticesを更新しても一回しかされなかったり、見る角度によって表示されなくなったりしたけど直った

Last updated at Posted at 2022-08-29

three.js r69,r70でのはなし 
(※はてブからの移植 https://fkef.hatenablog.com/entry/2015/03/10/014318


頂点編集が反映されなかった話

物のpositionを変えるのはNeedUpdateなどしなくても問題なく反映されるが、
vertices(頂点)座標を更新するときには毎回geometry.verticesNeedUpdate = trueをかまさないと アニメーションrender()ごとにフラグがもと(false)に戻ってしまうらしい

booleanだからなんかずっとupdateしてくれるもんかとおもってたけど違うのね

verticesneedupdate - Google 検索
javascript - ThreeJS Dynamic Line Change - Stack Overflow

その他geometry関係のパラメータを変えた場合には毎回対応したneedupdateをtrueにしてあげないといけないのか、なるほど


それでもカメラアングルによって見えないときがあった話

もうひとつ、verticesを変更したときになんか見るアングルによって表示されたりしなくなったりして、なんじゃこりゃなんか重なってんのかなこれ…とかいろいろ検証したけど、
結局geometryの.computeBoundingSphere()をやっとかなかったので表示判定が前の場所に取り残されていたということでございました

で前にverticesがあった場所が入らないアングルになると表示されなくなる・・というわけだなこんちくしょう!

THREE.Lineでは他の .computeBoundingBox()は効かなかったのでlineはSphereで判定しているということだろうか

うーんなおってよかった

1
0
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
1
0