5

three.jsで3Dインタラクティブグローブを実現したいのですが、スプライトプリミティブとレイキャスターを交差させる方法があるのでしょうか?

4

1 に答える 1

3

RayCasterのソースコードを確認する場合

https://github.com/mrdoob/three.js/blob/master/src/core/Raycaster.js

crossObject関数は、THREE.Spriteではなく、THREE.ParticleまたはTHREE.Meshのインスタンスであるオブジェクトのみをチェックするように見えます。おそらくこれは、スプライトが画面座標を使用するように設定されている可能性があるため、この状況では3Dシーンに投影される光線が意味をなさないか、スプライト画像が常にカメラに面しているときにシーンに配置された場合は意味がありません。標準の3Dメッシュのように機能します。

おそらく、PlaneGeometryまたは非常に薄いCubeGeometryをスプライトの位置にアタッチし、その回転をカメラの回転に設定して、スプライトのようにカメラのビュープレーンに常に平行になるようにしてから、交差を確認します。代わりにメッシュで?

于 2013-03-28T04:16:51.700 に答える