From the UDN:
"In USceneComponent::PropagateTransformUpdate, even when Transform has not changed, Bounds are updated and MarkRenderTransformDirty is called. I think that judging whether Bounds have changed or not when updating Bounds and not calling MarkRenderTransformDirty can make RenderThread faster."
User claims up to 1ms savings on the render thread (in their scene).
Additional concerns (from Zak):
I am concerned about the implications for SkeletalMeshComponents. This comment in PropagateTransformUpdate is relevant:
// We update bounds even if transform doesn't change, as shape/mesh etc might have done
which does imply that the bone transforms could change, while the bounds might not. However that case seems like it could be addressed another way; relying on this chain of functions to push that update is probably not ideal.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-38664 in the post.
0 |
Component | UE - Gameplay |
---|---|
Affects Versions | 4.13, 4.14 |
Created | Nov 16, 2016 |
---|---|
Resolved | Aug 18, 2021 |
Updated | Aug 18, 2021 |