我查看了http://threejs.org上的示例。我没有看到任何与ColladaLoader
对象相关的命中检测。那里的一切都与基本的网格形状有关。
是否可以对Collada物体进行命中检测?如果是这样,语法会是什么样的?
答案 0 :(得分:1)
你看过http://threejs.org/examples/#webgl_octree_raycasting了吗?
这似乎就是你要追求的目标。
This link有一个关于使用THREE.JS RAY CASTER
检测到的Collada对象的教程。您需要修改Ray Class
才能使其生效。
答案 1 :(得分:1)
以下是我在mouse picking
中发现处理THREE.JS.
个对象的链接。前一个或两个最有可能过时。
http://learningthreejs.com/blog/2012/01/17/dom-events-in-3d-space/
http://voxelent.com/html/beginners-guide/1727_08/ch8_Picking_Scene_Final.html
http://jensarps.de/2013/10/29/mouse-picking-collada-models-with-three-js-part-ii/
Jens Arps写了一篇关于这个主题的精彩文章。根据该文章,THREE.Raycaster
检测需要自定义Collada Object
。
从 THREE.JS r62 开始,不再需要这样做了。鼠标选择需要 Raycaster ,投影仪和 Vector3 。 Jens Arps的 latest article 涵盖了必要的步骤。起初有点难以跟进,示例中有一个FirstPersonControls
相机,需要时间来适应。
在检查the code后,我能够选择并操纵Collada Objects
。
答案 2 :(得分:0)
ColladaLoader
以及所有其他加载程序将对象从特定格式导入常规THREE.Mesh
因此,针对collada导入的网格物体进行命中检测不需要特殊代码。
这也意味着如果您的代码使用collada导入的网格,它将适用于任何其他源格式。