Spiral ramp collision


I have this spiral staircase for a track in my kart racing game, the goal is to make it so that you can drive up the stairs as part of the track. However here is where the problem lies:

The mesh is set up in a way that using a Hull collision creates a gap between the point of contact and the mesh, but using a convex collision system creates an extremely bumpy drive, the way I planned to divert this was by making a spiral using base parts, however the process of making a spiral with a smooth curve is currently driving me insane.

Here is what the stairs look like in game, if that helps.

1 Like

You will have to make the collisions artificial. If the spiral is a near-perfect spiral it will be easier.

I’m aware that I have to make the collisions artificial, however making a spiral near-perfect isn’t something that is rather simple,

plugins like Archimedes can make circles, however getting these to be anything other than staircases is a challenge in patience.

Would it be easier if I just made a segment of a spiral in something like Blender and imported it for collisions?

Is the entire hallway/ramp one Mesh, or is it just the stairs? I’d suggest making the ramp a single MeshPart so the walls etc. don’t mess up the collisions.

You can check off or uncheck the Studio Settings Property called ‘Show Decomposition Geometry’. This can be a little tedious each time so I use this plugin Mesh Optimization Tools - Roblox to click between the settings.

Spirals in Blender are pretty easy if you use the Screw Modifier.

1 Like

try using large wedge parts … i know its not a good idea but perhaps the player wont notice it , u can fill in few gaps by plugins and storiginal staircase’s collision to false

the stairs are one mesh, and they make up 1/4 of a full 360 degree spiral

If you’re making it in Roblox Studio, you can rotate a part first, for example, 5 degrees. After that, you can use the Archimedes plugin to make the smooth road you want to make.

The result will be something like this:

I suggest doing it in Blender if you want to be good at the performance side…

Here’s a tutorial you can follow to make it in Blender:

1/4 turn, but how big a radius (studs) and how high does it rise? If it’s too steep there may be issues.
Do the karts have suspension? If they don’t then they’ll only be driving on 3 wheels up the spiral so that may cause some issues too.

The actual kart physics are all handled by a ball rolling around. There’s no suspension/wheel collision actually happening

Please answer the other questions in my previous post (radius and height).

So what’s the ball doing while going up the spiral? Maybe make it semi-transparent when you test it so you can see what it does compared to the kart itself.

What handles the kart physics, Raycasting?
If you use Raycasting then use my suggestion about ShowDecompositionGeometry. You’ll be surprised how different Meshes and Unions sometimes look between their physical and visual shapes.

The ball rolls around as normal, the raycast is shot to determine what normal-vector the kart should be aligned to.

Here was a proof of concept I had made for this back in 2020 that explains what is being done

The kart goes up the spiral without slowing down, however when using default geometry decomposition for collisions the kart bumps around too much, making the experience unenjoyable, when using the hull geometry the height difference between the edges of the stairs makes it so the whole kart is floating above the stairs.

At the end of the day if I want a smooth rolling experience I’ll need to fake the collisions using a smoother spiral

why didn’t i think of twisting the part with modifiers!!!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.