1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
void geneJOINT( Struct o, NxActor *A, NxActor *B )
{
//------- POS & AXIS
NxVec3 pA = A->getGlobalPosition();
NxVec3 pB = B->getGlobalPosition();
NxVec3 gAx(0,0,1);
NxVec3 gAnch((pA.x+pB.x)/2, (pA.y+pB.y)/2, (pA.z+pB.z)/2);
NxDistanceJointDesc d1;
//---Basic descritpion
d1.setToDefault();
d1.actor[0] = A;
d1.actor[1] = B;
//---GLOBAL HANCHOR
d1.setGlobalAnchor(pA);//globalAnchor);
d1.setGlobalAxis(gAx);
//---FLAGS
d1.flags = NX_JF_COLLISION_ENABLED | NX_DJF_MIN_DISTANCE_ENABLED | NX_DJF_MAX_DISTANCE_ENABLED | NX_DJF_SPRING_ENABLED ;
d1.localAnchor[0].zero();
d1.localAnchor[1].zero();
NxJoint * m = gScene->createJoint(d1);
m->userData = o; |
Partager