我希望通过巴比伦或THREE.js创建一个3D类型的贪吃蛇游戏。
这是关于当蛇向左或向右转时,我希望蛇如何移动的图片。 机芯对比
也就是说,我希望蛇移动得更"平稳",就像汽车左转或右转时的运动一样。
我需要骨架动画来实现此目标吗?如果是这样,您能否给我一个有关如何实现它的解决方案/建议。
另一种潜在的(可能更简单的)方法是使用粒子系统。当蛇生长时,您只需更改粒子系统上的参数,然后引擎将负责处理平滑。
粒子系统只需要遵守以下规则:
- 粒子从头部网格向一个方向射出。
- 粒子 minimum_lifetime = maximum_lifetime
- 粒子minimum_speed = maximum_speed
然后,随着它的大小增长,您只需增加粒子方向即可。然后,您只需将头部位置与其粒子(尾部)位置进行比较即可检查碰撞。
据我所知,BJS 中的默认粒子系统并不正式支持碰撞,但您可以查询粒子的位置以检查碰撞,或使用允许物理的固体粒子系统。(SPS可能是最终最好的方法)。
然而,这是一个示例游乐场,仅用于演示运动。
https://playground.babylonjs.com/#PLRKFW#1