Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

SplineMeshComponent collision breaks if the component moves independently of its actor

This issue has taken a long time to track down. The symptoms are:

If the actor containing a SplineMeshComponent is transformed then the collision attached to the component is properly updated and matches the actual location of the component. Overlaps are properly calculated with overlapping actors.

If the SplineMeshComponent is moved independently of its actor by calling set start, end etc. followed by update mesh then these issues occur:

  1. Get overlapping actors/components often returns actors/components that the spline mesh was overlapping before the move, even if they are clearly no longer overlapping visually

  2. Get overlapping actors/components does not consistently return actors/components that the spline mesh is visually clearly overlapping

  3. The spline mesh component's collision has holes where overlap events should occur but don't

  4. (this is what made this hard to track down) When using the 'show Collision' console command the collision components of the spline mesh appear to be in the correct place, but the actual collision volumes used for calculation do not match what is shown visually.

The following workaround fixes this issue and is done after calling update mesh:

  • Get actor transform

  • Set actor transform with +someValue to at least one of the components

  • Set actor transform with -someValue to the component

This seems to force the collision to be properly updated because UE4 considers that the actor has moved. It's necessary to call set actor transform twice because if you just feed in the current values from get actor transform unchanged UE4 ignores it and the collision isn't updated.

Making the spline mesh the root component has no effect on this issue. I have 'Use Simple Collisions as Complex' set on this component as it updates on tick when moving (tracking VR motion controllers) and complex collisions kill the frame-rate.

Product Version: UE 4.14
more ▼

asked Mar 09 '17 at 09:49 PM in Bug Reports

avatar image

41 2 5 7

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Hi Morat,

Sorry for the delay.

Could you try testing this in the latest 4.15.1 build of the engine? There was some changes made to spline mesh component collision (specifically JIRA UE-39212) and if very possible this issue has already been fixed.



more ▼

answered Mar 20 '17 at 08:26 PM

avatar image

41k 1009 183 494

avatar image Morat Mar 25 '17 at 06:20 AM


Apologies for not getting back to you sooner, I was refactoring motion controls for the affected component and couldn't re-test.

I've updated to 4.15.1 and this issue still exists. The workaround is still effective in tackling it.

avatar image TJ V ♦♦ STAFF Apr 03 '17 at 05:42 PM

Hi Morat,

Sorry for the delay.

I'm having trouble getting the overlap issue you described to reproduce. Would you be able to create a new test project that has the issue and upload it here?

avatar image Morat Apr 07 '17 at 09:02 AM

Hi there

I'm not sure, it might take me a while to get that together.

avatar image TJ V ♦♦ STAFF Apr 07 '17 at 02:31 PM

I'll be on the lookout for other reports of this but in the meantime I'll resolve this post for tracking purposes. When you have time to dig into this more, just post a comment back here to reopen the post.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question