When doing overlap tests in PrimitiveComponent, UWorld->ComponentOverlapMulti is used.
The callstack for that ends up looking like this (callstack is inverted, highest level on top):
UWorld::ComponentOverlapMulti(...)
UWorld::ComponentOverlapMultiByChannel(...)
UPrimitiveComponent::ComponentOverlapMulti(...)
UPrimitiveComponent::ComponentOverlapMultiImple(...)
The first two calls (in UWorld) don't add anything, other than default ComponentQueryParams (which is FComponentQueryParams::DefaultComponentQueryParams). Further, they both perform null checks on the input PrimitiveComponent (which are unnecessary given it is this).
This default could easily just be added to the primitive component, and the call made directly.
Test ComponentOverlapMulti still works.
This change doesn't change functionality or fix a bug, instead just cleans up code.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-36472 in the post.
0 |
Component | UE - Simulation - Physics |
---|---|
Target Fix | 4.15 |
Fix Commit | 3172152 |
---|---|
Main Commit | 3182044 |
Created | Sep 27, 2016 |
---|---|
Resolved | Oct 24, 2016 |
Updated | Jun 23, 2018 |