How to ignore initial penetration in line traces
I am implementing bullet penetration and for my character skeletal meshes I am running into the issue where the second+ ray cast returns blocking hit immediately because the trace finds it's penetrating the physics asset already.
To clarify, I am tracing to find a skeletal mesh w/ physics assets as my first blocker, I then use this impact + a small vector in the shot direction as the start of my second trace. Now this returns blocking immediately with bStartPenetrating to true. I can't simply add this Actor to ignored actors since I NEED to know multiple hits of a single actor (in this case, let's say hitting both his hands and head) but I wish to ignore the hit if it is an initial blocker/overlap.
using: FCollisionQueryParams QueryParams; QueryParams.bFindInitialOverlaps = false;
Has no effect either, the character mesh set to Block my weapon's trace channel and not overlap, which makes sense given the name of the bFindInitialOverlaps above, but there is seemingly no option to ignore initial penetration? which is what I need to let the trace pass through the element (eg. piece of it's leg that's a capsule in the physics asset) and continue tracing to find either a different primitive of the same physics asset OR a new actor entirely.
(green is impact location, purple is the start of the NEXT trace + 10 units offset in direction of the shot. You can see green and purple in the SAME location, meaning bStartPenetration must be TRUE which I am trying to filter out)
Follow this question
Once you sign in you will be able to subscribe for any updates here