Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在three.js中,写入盒射线碰撞检测的最佳方式是什么?_Javascript_3d_Collision Detection_Webgl_Three.js - Fatal编程技术网

Javascript 在three.js中,写入盒射线碰撞检测的最佳方式是什么?

Javascript 在three.js中,写入盒射线碰撞检测的最佳方式是什么?,javascript,3d,collision-detection,webgl,three.js,Javascript,3d,Collision Detection,Webgl,Three.js,本实验中的对象随机移动: 使用three.js库为此编写长方体光线碰撞检测的最佳方法是什么?如果使用光线跟踪: 对于这两个框,选中它的12条边与另一个框的6个面相对。如果它们都不相交,则可以确保没有碰撞 要将一个长方体的边与另一个长方体的面进行核对,请执行以下操作: 定义一条直接沿边延伸的无限射线。 定义位于另一个长方体面上的无限平面。 使用“光线平面交点”查找无限平面和无限光线的交点。 检查交点:a位于长方体的边缘,b位于另一个长方体的面内。如果是这样,你有一个十字路口 至于一旦你知道交叉点发

本实验中的对象随机移动:


使用three.js库为此编写长方体光线碰撞检测的最佳方法是什么?

如果使用光线跟踪:

对于这两个框,选中它的12条边与另一个框的6个面相对。如果它们都不相交,则可以确保没有碰撞

要将一个长方体的边与另一个长方体的面进行核对,请执行以下操作: 定义一条直接沿边延伸的无限射线。 定义位于另一个长方体面上的无限平面。 使用“光线平面交点”查找无限平面和无限光线的交点。 检查交点:a位于长方体的边缘,b位于另一个长方体的面内。如果是这样,你有一个十字路口


至于一旦你知道交叉点发生了该怎么办,这是一个全新的话题。

box-ray是什么意思?也许我把它描述错了,使用光线跟踪的两个盒子之间的碰撞。与边界框碰撞不同的是,这些对象可以以彼此不垂直的角度移动。如何生成无限光线?