Full collision detection without slipping on ramps.

I use for my character a sphere collision model and this keeps him from slipping on ramps. But what I want to do is use a convex mesh so I can have better collision detection, because the sphere is only of the bottom of the character so the sphere won’t be so wide. Any ideas?

I’m not sure how using a spherical bottom would keep the player from slipping on ramps. I would think if it does, it’s not in every situation. Maybe better look for another approach. I do it with Python.

Could you give an example blend?

Just a bump. Anyone got any ideas?

Maybe you could explain what you mean by ‘slipping on ramps’. Do you mean slopes?

Here’s my problem:

Okay, I don’t know much about using Character physics, so maybe having just the right settings would solve that issue. I’m using Dynamics physics and control movement with Python.

Edit: This is the best I can do:
Edit: If you need to control friction (for walking on ice) just let me know

Attachments

Movement_friction_00.blend (97.4 KB)

Thank you very much for that. I’ll look at it when I can and report back on anything I come up with. Thanks again for the effort.

Check out Wrectified rebooted,

When in idle and touch ground, I apply damping,
When pressing a direction, it checks LinV and applies forces, so you can go up and downhill etc

It is in game demos,

It’s probably not the best solution. I’m not very happy about it myself. Better look for another way in order to have zero friction.

i think maybe the option your looking for is in the material buttons under the physics drop down set the friction of the material. oh and make sure your in blender game render.

yeah, but friction is not as good as

Ray-----------python



import bge
cont =bge.logic.getCurrentController()
own = cont.owner
Rray = Cont.sensors['Ray']
if Ray.positive and own['Action']="Idle":
    own.worldLinearVelocity*=.9


this assumes you know how to control the property action

which is what my system does…

animations, locomotion , jumping etc are all handled by it.

It doesn’t solve much for me. There’s still sliding. (when friction set to zero)

im not really familiar with the friction setting but i would think that u would need to up the friction rather then take it away

what about

adding

import bge
cont =bge.logic.getCurrentController()
own = cont.owner
Rray = Cont.sensors['Ray']
if Ray.positive and own['Action']="Idle":
    own.worldLinearVelocity*=.9
    own.applyForce((0,0,own.mass*9.8),0)

You could. But I find friction to be causing more problems than it takes away. For example, jumping on a block when touching the block. Or, when walking, sometimes you get stuck in the mesh of the ground. It’s a lot of tweaking, and I don’t like it.

Raco, have you downloaded Wrectified Rebooted?

Tried that too. But hey, BPR, I don’t want to hijack this thread, so you don’t have to find a solution which omacx isn’t searching for.

No, but I don’t have to.

I am not highjacking, and I was not trying to be a jerk…

it does what he asks…

zeroFriction.