KINEMATICBODY: 与表面对齐

本文介绍了如何使Godot中的KINEMATICBODY在与地形交互时保持对齐,避免“漂浮”现象。通过获取碰撞的表面法线并调整坦克的旋转,确保坦克的Y轴与地形保持一致。文章详细讲解了解决这个问题的步骤,包括使用RayCast避免多表面碰撞导致的抖动,并通过插值实现平滑过渡。
摘要由CSDN通过智能技术生成

目录

KINEMATICBODY: 与表面对齐

问题

解决方案

表面法线


KINEMATICBODY: 与表面对齐

问题

你需要你的运动学体与地面或地形保持一致。

解决方案

这个食谱建立在运动学体:移动食谱中描述的基本KinematicBody 控制器的基础上,所以请先阅读那个。

首先,我们在场景中添加了一些地形。 您可以从此处下载地形:https://fertile-soil-productions.itch.io/modular-terrain-pack。 这是低多边形地形,但是您可以使用或制作自己喜欢的任何地形以使用此技术。

正如你所看到的,移动仍然与地形有关,但坦克似乎“漂浮”在斜坡上方,因为它没有改变它的方向。

相反,我们需要旋转坦克,使其履带与地面保持一致,即使在坡度变化时也是如此。要做到这一点,我们需要知道哪个方向是向上的。

表面法线

表面法线是垂直于曲面的单位向量(“法向量”和“单位向量”意思相同)。它显示了表面的朝向。在网格的情况下,每个表面都有一个指向外的法线。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值