In Unreal, I have some modular minigolf pieces that I can snap together to make a little golf course out of..
-
In Unreal, I have some modular minigolf pieces that I can snap together to make a little golf course out of.. but if I try to roll a golf ball over them, often the ball will give a little jump at the joins even though they are snapped together in the editor. What am I doing wrong? Any suggestions welcome #unreal #ue5
-
@psychicparrot42 In Unity this can happen because the collision geometry of the sides of the pieces can sometimes take preference over the top side.
Unreal may have similar functionality to merge collision geometry. That, along with custom collision geometry (only the top face) has resolved the problem for me
-
@leroy Cheers Leroy. Someone mentioned this happens in Unreal too, so I reckon you're right on. It looks like I'm going to have to scrap all the collisions the modular pieces have and make my own simplified geometry, like you did. Thanks for the reply!
-
@leroy I didn't know this happened either in Unity or Unreal, so it's actually really good info to know. It explains some funky behaviour I've seen physics do in the past and it's something I can watch for in the future.
-
@psychicparrot42 I really wish mastodon client pulled all replies when a post is ‘opened’
It’s definitely a frustrating aspect of making a golf game, which should be relatively simple.
I suggest shoving the mesh in blender and deleting all the ‘bad’ faces. That way you have a duplicate mesh, same origin and scale, that you can use for collisions.
The other approach I’ve taken is fully procedural mesh generation, so I could ensure there were no seams.
-
@psychicparrot42 Unsure if this is the case in Unreal. But in Unity ball rolling physics by default are a little off too. IIRC it’s something to do with the maximum spin an object can have.
So if you’re seeing the ball roll well and then suddenly slow down, that is likely the cause.Most likely a low default value in editor (to fit 99% of games) that can be pushed up.