2013-03-28 24 views
1

我已经通过Three.js中的heightmap创建了一个地形,并且正在使用mrdoob的misc_controls_pointerlock进行碰撞和移动。但是,当我做objects.push(terrainobj);的性能下降到约3fps(从60左右),并没有与地形相撞。碰撞是通过射线实现的。我怎样才能解决这个问题?使用Three.js进行地形碰撞问题

回答

0

如果它只是一个高度图,您可以避免使用ray并在位图中使用正确的碰撞检查(使用canvas和imagedata)。

您只需要将您的XZ世界位置转换为heightmap中的XY像素。然后,如果你的Y在世界上的位置低于像素的颜色值,那么你向上移动对象。

+0

非常感谢。 – YUMatty