Hello! I have actor A and B and I’m checking for when they are overlapping inside of actor A. Actor B is just a default sphere object and actor A is a generated mesh from a spline. The issue is when I move actor A(generated mesh) into actor B(sphere) nothing gets triggered, but if actor B is the one that is moved then the overlap event gets triggered as expected.
Hey @Luurio!
Just want to make sure here- double check that both things have “Generate Overlap Events” enabled. It could be that simple to fix, and that’s what we’re hoping for!
Here’s an example and below is the official UE documentation on overlap events (near the bottom of the page is relevant to this case!).
I checked and both of them have Generate Overlap Events enabled.
This is the sphere
This is the generated mesh
Try setting the response to “Enemy” on the generated mesh to “Overlap” instead of block. Because one is set to Block and the other is set to Overlap, it might be triggering OnHit instead of BeginOverlap.
Barring that, could you possibly bring some video so we can examine the phenomena in-action?
Changing Block to Overlap did nothing.
The cylinder is the generated mesh
This is all the code I have. Its on the generated mesh
Hmmm it might be the component nature.
Have you tried replacing it with on Actor Begin Overlap just to see what happens?
Its still the same behavior
I found another thread with issues with the spline mesh collision. Maybe give their solution a shot?
Unfortunately, none of that helped. Thanks for your help. Right now I see 2 workarounds.
-
always make the sphere move by a tiny increment. Its simple and easy but it feels like a sin. Every developer bone in my body is cringing at this.
-
Generate sphere colliders along the spline, making and having those detect overlapping events. And have a manager responsible for keeping track of when 1 of the spheres has overlapped.