How can I implement a bounce mechanic?

I am making a mini golf game in which the player can bounce off of walls, but for some reason the ball just stops or goes to the side when it hits a wall. I have tried a few things with no real breakthrough. I am using a Launch Character node to push the ball around, and a physics volume to make the ball seem like it is rolling around. Any suggestions?

Still haven’t found a solution. :confused:

Hello Sublimed,

Try creating a Physical Material and assigning it to your ball. (Restitution will be the value you’ll want to tweak)

Hope that helps,

You may wish to add projectilemovement component. It has control for bouncing, and can be activated/deactivated when needed.

This seems to only do vertical bouncing.

Doesn’t seem to be working. :confused:

Why are you using a Character pawn for the ball, instead of a basic Pawn, or even a non-pawn Actor? Is it so you can smoothly replicate its changes in velocity and rotation over the network?
If you don’t need that, then it might behave more like you want if you get rid of the CharacterMovement component stuff, and just use plain old physics. Character Movement is meant to do things like slide smoothly along a wall when it bumps up against it (imagine how annoying it would be in a 1st person shooter game if you bounced every time you touched a wall), so that might be part of the problem.

If you need Character Movement for some reason, then you can play with values such as Ground Friction and deceleration etc. to get it to act more like a plain old physics actor.

But I would say that unless you need the ball to be able to be directly controlled by a player or AI so they can make it change direction and perform actions like a Character, then you don’t need it to be a Character. You can use Apply Impulse on it as a physics simulated actor instead of using Launch Character.