我正在使用 Three.js 作为渲染器和 Physijs 作为物理引擎创建一个简单的游戏,尽管这个问题可以很容易地推广到整个游戏。
在游戏中,玩家的物理/运动通常看起来与其所在的物理引擎是分开的。它们以瞬间加速移动并立即停止。但是,根据物理引擎的规则,玩家可以从高处坠落并与其他物体(或玩家)发生碰撞。
请注意,就我的问题而言,玩家有一个不受物理约束的相机对象,尽管它可以很容易地连接到物理对象。
达到这种效果的最佳方法是什么?我想到了一些解决方案,但似乎没有一个完全足够:
没有物理附件,翻译玩家的相机。然而,这将忽略碰撞,绕过物理引擎。
物理附着,并对物理对象施加力。然而,这涉及到摩擦力,并将玩家的运动置于物理引擎的支配之下。
想法?(有一个类似的问题“ https://stackoverflow.com/questions/15822168/how-to-make-a-walk-though-like-fps-tps-games-with-three-js-and-physics-engine ",虽然它没有收到任何答复)