我们的物理载具始终存在一定概率穿插入其他物体的碰撞之中,高速运动或收到外力撞击时更明显,已经开了连续碰撞检测(CCD)还是存在,这个有没有什么办法可以解决或改善的?
你好,
这个问题最好还是可以发一个可复现的工程过来测试看看, 但有两个方向可以先看下:
载具的CCD开启: 需要在Physical Asset上所有collision body上勾选CCD, 只在载具skeletal mesh上勾选是不生效的.
CCD Threshold的设置: CCD有一个优化是, 当碰撞体位置变化小于bound的最小轴*ThresholdBoundScale, 我们不再进行CCD rewind处理, 而是用普通的离散碰撞处理, 不了解现在载具的外形是什么样的, bound过大的话建议适当减小 p.Chaos.CCD.EnableThresholdBoundsScale (默认0.4), 可以结合下面的debug draw调整
p.Chaos.DebugDraw.Enabled 1
p.Chaos.Solver.DebugDrawCCDThresholds 1
当绘制的bounds变成橙色时说明此帧真正启用了CCD.
[Image Removed]另外CCD在载具里的开销也是比较高的, 也可以考虑试试MACD, 虽然是个experimental的特性, 但我们开发测试对比普通的碰撞可以更好的处理高速运动物体.