Three.js Ray.intersectObjects不尊重父Object3D旋转

时间:2012-11-24 20:33:33

标签: three.js

我在Object3D转换层次结构中使用Ray.intersectObjects时遇到问题。从本质上讲,intersectObjects似乎忽略了层次结构顶层的旋转。我试图通过修改webgl_interactive_cubes.html演示来重现这个问题,但没有运气。不幸的是我不能发布我正在做的事情。我将尝试重现问题,以便我可以分享它,但也许有人对错误提出了建议。这是使用THREE.js r52。

以下是我认为的相关内容:

  
      
  • 我有一个根THREE.Object3D元素,它保存顶级旋转。这是似乎被忽略的轮换。
  •   
  • 这个根元素有两个子节点,都是THREE.Object3D对象。它们每个都有(固定的)旋转和位置变换。
  •   
  • 我正在寻找这两个元素的孩子之间的交叉点。这些孩子都是来自另一个层次的THREE.Mesh对象的克隆,使用THREE.Mesh.clone()创建。
  •   
  • 当顶层旋转归零时,交叉点都可以正常工作。
  •   
  • 一旦应用顶级旋转,交叉点就像没有旋转一样......对象在屏幕上移动,但我得到了交叉点,就像对象没有移动一样。
  •   

我在检查交叉点之前尝试在root上调用updateMatrixWorld(true),但这没什么区别。

0 个答案:

没有答案