[ODE] Inconsistent joints

Roland Plüss roland at rptd.dnsalias.net
Fri Sep 1 11:07:59 MST 2006


> Roland Plüss wrote:
>>   dReal k = info->fps * erp;
>>   info->c[0] = k*j->contact.geom.depth;
>>
>> It is assumed that the depth is recovered gradually over the entire
>> simulation step but this is not true. After the "New Joint Guide" the
>> c-value in the contact joint is calculated like this:
>>
>> c = ( ERP / s ) * nT * [ ( p1 + a1 ) - ( p2 + a2 ) ]
>>
>>   
>
> ERP/s is the same as the "k" calculated in the code.
>
> It appears nT happens to be 1 for the contact joint.
>
> ((p1+a1) - (p2+a2)) is the same as contact.geom.depth for the case of
> the collsion joint.
>
> So, what's the difference you're implying? ODE is a first-order
> integrator, so it doesn't use multiple derivatives for a single step,
> like you'd see in something like R-K4.
>
> Cheers,
>
>             / h+
With nT I tried to reference the 'contact normal' btw. Judging from the
multi-stepper I thought the joint constraints are checked more than once
for one simulation step ( dWorldQuickStep ). So the constraint force is
calculated only once per simulation step and not per interval?

-- 

Leader and Head Programmer
- Game: Epsylon ( http://epsylon.rptd.dnsalias.net/ )
- Game Engine: Drag(en)gine (
http://epsylon.rptd.dnsalias.net/dragengine.php )
- Normal Map Generator: DENormGen (
http://epsylon.rptd.dnsalias.net/denormgen.php )

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 252 bytes
Desc: OpenPGP digital signature
Url : http://q12.org/pipermail/ode/attachments/20060901/cb3f40e3/signature.bin


More information about the ODE mailing list