Trying to get multiple friction levels on one mesh in BGE

My player character is a cube. Its physics type is set to “Rigid Body” (because I want some more advanced movement options that “Character” doesn’t permit).
I’ve assigned a high-friction material to the bottom face (so he slides to a stop quickly) and a frictionless material to the other five sides (so he can jump while pressing against a wall). Unfortunately, he behaves as though the whole body is high-friction.
I’ve coloured one material red and the other white to verify that I’ve applied them correctly. I’ve also beveled the bottom edges such that no red-white edge ever colldes with anything. I’ve tried making all the faces frictionless, and it still acts high-friction.

What do I have to do to make the game engine respond properly to both textures’ physics settings?


  • Chris

The game engine has had support for only one set of physics properties per object since its inception (back in the days when it only could render one material per-object). It’s currently not possible to do this.

However, you could possibly use Python to code some logic to ‘repel’ the character from the walls to prevent him from getting stuck.

Okay, thanks for the clarification. I got it to work by setting friction to zero and using a script to decelerate my character.