UE物体绑定样条线方向问题

在这里插入图片描述
https://www.bilibili.com/video/BV19T4y1P7RS/?spm_id_from=333.1391.0.0&p=14&vd_source=e1d40d71665d290916d5c90eef97017b
https://www.bilibili.com/video/BV1tx411a7dm/?spm_id_from=333.1391.0.0&vd_source=e1d40d71665d290916d5c90eef97017b

在 Unreal Engine 5(UE5)蓝图中,要把Get Transform at Distance Along SplineBreak Rotator这两个节点连接起来,可按以下步骤操作:

1. 节点功能概述

  • Get Transform at Distance Along Spline:该节点的作用是依据指定的距离从样条曲线里获取一个变换(Transform)。变换包含位置、旋转和缩放信息。
  • Break Rotator:此节点用于把旋转体(Rotator)拆分成其组成部分,也就是Pitch(俯仰)、Yaw(偏航)和Roll(翻滚)。

2. 连接步骤

  1. 放置节点:在蓝图图表中,把Get Transform at Distance Along SplineBreak Rotator节点放置好。
  2. 获取旋转体Get Transform at Distance Along Spline节点有一个名为Rotation的输出引脚,它输出的是一个旋转体(Rotator)。
  3. 连接节点:把Get Transform at Distance Along Spline节点的Rotation输出引脚连接到Break Rotator节点的Rotator输入引脚。

3. 示例代码(蓝图可视化操作难以用代码展示,但可概念性说明)

下面是用伪代码形式对这个连接所代表的逻辑进行说明:

// 获取样条曲线指定距离处的变换
Transform = GetTransformAtDistanceAlongSpline(Spline, Distance);

// 从变换中提取旋转体
Rotator = Transform.Rotation;

// 拆分旋转体为 Pitch、Yaw 和 Roll
Pitch = Rotator.Pitch;
Yaw = Rotator.Yaw;
Roll = Rotator.Roll;

4. 具体操作

  • 打开蓝图编辑器,把Get Transform at Distance Along Spline节点添加到图表中。
  • Break Rotator节点也添加到图表中。
  • 鼠标悬停在Get Transform at Distance Along Spline节点的Rotation输出引脚上,鼠标指针会变成一个十字线。
  • 按住鼠标左键并拖动,将连线拉到Break Rotator节点的Rotator输入引脚上,然后松开鼠标左键完成连接。

完成连接后,Break Rotator节点就能把Get Transform at Distance Along Spline节点输出的旋转体拆分成 Pitch、Yaw 和 Roll 这三个分量。

从问题描述看,是物体旋转方向未正确对齐样条线导致车头不朝前。以下是修改步骤:

  1. 检查旋转修正逻辑
    当前蓝图中 Break Rotator 后对旋转分量做了加法(加 90.0),这可能错误改变了旋转方向。先删除 Break RotatorMake Rotator 之间的加法节点(+ 90.0),直接将 Break Rotator 输出的 YawPitchRoll 连到 Make Rotator 对应输入,确保旋转未经错误偏移。

  2. 验证基础旋转连接
    若删除加法后仍不对,尝试直接将 Get Transform at Distance Along SplineRotation 输出,跳过 Break RotatorMake Rotator,直接连到 Set Relative TransformRotation 输入。若此时车头朝前,说明中间旋转拆分重组逻辑有误,需重新检查。

  3. 样条线旋转方向确认
    确保样条线本身旋转设置正确。选中样条线组件,检查其编辑模式下的旋转方向(可通过在场景中预览样条线切线方向,确认车头应朝的方向是否与样条线切线方向一致)。

  4. 最终修正
    若直接连接 Get Transform at Distance Along SplineRotation 正常,但拆分重组后异常,可尝试在 Break Rotator 后,仅调整需要修正的旋转分量(如确认是 Yaw 需调整,可尝试改为加 0 或其他合理值,而非 90)。例如,若样条线旋转输出的 Yaw 本身正确,确保加法节点数值为 0,再连到 Make Rotator,最后接入 Set Relative TransformRotation

通过上述步骤,可修正旋转方向,使 car_merged 车头沿样条线方向运动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值