据我了解,计算与three.js冲突的唯一方法是intersectObjects
带射线......
我创建了一个包含碰撞基本元素的对象:地面,墙壁,物体,楼梯。与第一人控制。我认为我应该根据摄像机当前行进的方向来计算转向矢量,但它并没有真正起作用,我也看不出错误在哪里。
我预计相机无法穿过地面,墙壁和物体,并发现自己处于碰撞状态。
您可以看到代码here
答案 0 :(得分:2)
three.js没有自动碰撞检测。
您现在使用Raycaster
实施光线投射,而不是Ray
:
Raycaster.intersectObjects( objects, recursive );
您还必须自己控制相机的高度。
three.js r.54