PhysicsControlComponent中MaxTorque再次失效

此问题与以下讨论帖相关: [Physics Control Component [Content removed]

最近在看 Chaos Physical Control 的 Rotation Drive 实现时,发现一个 5.4 和 5.5+ 行为不一致的点,想确认下是否是预期行为。

在 5.4 及之前,Rotation Drive 是按三个轴分别求解的(ApplyAxisRotationDrive),每个轴都会在更新 Lambda 后调用 ApplyMaxLambda(),而 MaxLambda 是由 MaxTorque 换算得到的,所以 torque 上限会被正确限制。

但从 5.5 开始引入的 SIMD 路径(ApplyRotationDrivesSimd)来看,计算出 DeltaLambda 后,就直接转成角冲量并 Apply 了,代码里没有看到与 ApplyMaxLambda() 等价的限幅逻辑,并且函数中有一行:

```cpp

// Should check MaxLambda eventually

```

从这条路径看,MaxTorque 在 SIMD Rotation Drive 下似乎并不会生效。

实际使用中也能观察到:即使大幅修改 MaxTorque 的数值,Physical Control 的表现并无明显区别。

想请教一下问题:

这是有意为之的改动,还是一个尚未补齐的实现?

感谢指点。

[Attachment Removed]

Hi,

询问了开发同事,这是尚未补齐的实现(UE-358550),SIMD模式之前只测试了对性能的提升,MaxTorque功能没有覆盖到,感谢反馈!

[Attachment Removed]

感谢,请问这个有计划在何时更新吗?UE-358550 我在ue bug list中搜索不到相关的内容

[Attachment Removed]

你好, 因为目前处于假期, 暂时还没有更新, bug单上的所示优先级还蛮高的(Major), 但还没有fix版本列出.

有更新我立刻反馈~

[Attachment Removed]

Hi, 主分支上已经修复啦 CL 49627061

之后会合入5.8-release

[Attachment Removed]