Can't Character Rigid Body walk up spiral stair in Demo?

Can't Character Rigid Body walk up spiral stair in Demo?

Hi.
I just play Character Proxy VS Rigid Body Demo. Are there problems? Why can't CRB walk up a spiral stair?
Is it a known issue or meant to demonstrate somethings?

(please see attachment)

AttachmentSize
Download prob.JPG21.1 KB
4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi there.

Quoting - wat2k
Hi.
I just play Character Proxy VS Rigid Body Demo. Are there problems? Why can't CRB walk up a spiral stair?
Is it a known issue or meant to demonstrate somethings?

(please see attachment)

Yes, this is a known issue. The purpose of the demo is to show the differences between CharacterRigidBody and hkpCharacterProxy.

What is happening here is that every rigid body (including the character rigid body) has a collision tolerance that the character proxy does not. This results in contact points being generated that are not on the actual surface of the shape, but rather a small distance away. This is an optimisation for physics simulation, but has the observed side effect in this use case.

One workaround is to reduce the global collision tolerance from ten centimeters to one centimeter by setting hkpWorldCinfo::m_collisionTolerance to 0.01f. Note that this affects the entire physics world, and can make stacked objects appear 'jittery'.

Patrick Developer Support Engineer Havok www.havok.com

Quoting - PatrickAtHavok

Hi there.

Yes, this is a known issue. The purpose of the demo is to show the differences between CharacterRigidBody and hkpCharacterProxy.

What is happening here is that every rigid body (including the character rigid body) has a collision tolerance that the character proxy does not. This results in contact points being generated that are not on the actual surface of the shape, but rather a small distance away. This is an optimisation for physics simulation, but has the observed side effect in this use case.

One workaround is to reduce the global collision tolerance from ten centimeters to one centimeter by setting hkpWorldCinfo::m_collisionTolerance to 0.01f. Note that this affects the entire physics world, and can make stacked objects appear 'jittery'.

Thanks Patrick
Instead of reduce tolerance, Is it better to increase m_maxslope of CRB to compensate that tolerance?

Wat

Quoting - wat2k

Thanks Patrick
Instead of reduce tolerance, Is it better to increase m_maxslope of CRB to compensate that tolerance?

Wat

Hey Wat
Increasing m_maxslope will indeed help here, but it will enable the character to climb surfaces that mightbe too steep.

Patrick Developer Support Engineer Havok www.havok.com

Login to leave a comment.