gpt4 book ai didi

javascript - 如何将 Raycaster 与组合相机一起使用?

转载 作者:行者123 更新时间:2023-11-28 18:52:39 26 4
gpt4 key购买 nike

我尝试使用 Raycaster(用于选择),它可以与 PerspectiveCamera 配合使用,但不能与 CombinedCamera 配合使用。

首先,Raycaster 似乎不支持 CombinedCamera,因此 among those line在三个.js 中我添加了这个:

if ( camera instanceof THREE.CombinedCamera ) {
if( camera.inPerspectiveMode ) {
camera = camera.cameraP;
} else if ( camera.inOrthographicMode ) {
camera = camera.cameraO;
}
}

if ( camera instanceof THREE.PerspectiveCamera ) {

...

因此,当它指的是嵌套相机时,但这并不能解决问题,因为我相信,嵌套相机位置-四元数-旋转没有更新??

我怎样才能实现这一点并使 Raycaster 使用组合相机的正交和透视模式?

最佳答案

渲染器需要世界矩阵数据才能进行光线转换。对CombinedCamera代码进行以下修改:

  // Add to the .toPerspective() method:
this.matrixWorldInverse = this.cameraP.matrixWorldInverse; //
this.matrixWorld = this.cameraP.matrixWorld; //

// and to the .toOrthographic() method add:
this.matrixWorldInverse = this.cameraO.matrixWorldInverse; //
this.matrixWorld = this.cameraO.matrixWorld; //

r73。

关于javascript - 如何将 Raycaster 与组合相机一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34244134/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com