Difference between revisions of "NewtonUserMeshCollisionCollideDesc"
Line 7: | Line 7: | ||
dFloat m_boxDistanceTravel[4]; // OUT: max distance that box bpxP0 and boxP1 can travel on this timestep, used this for continue collision mode. | dFloat m_boxDistanceTravel[4]; // OUT: max distance that box bpxP0 and boxP1 can travel on this timestep, used this for continue collision mode. | ||
int m_threadNumber; // READ: index of newton thread that called callback | int m_threadNumber; // READ: index of newton thread that called callback | ||
− | int m_faceCount; | + | int m_faceCount; // OUT: App should set this to the number of faces in the returned polygon set. |
− | int m_vertexStrideInBytes; | + | int m_vertexStrideInBytes; // OUT: App should set here the size of each vertex. |
− | dFloat m_skinThickness; | + | dFloat m_skinThickness; // OUT: this is the minimum skin separation specified by the material between these two colliding shapes |
− | void* m_userData; | + | void* m_userData; // READ: UserData of user mesh collision |
− | NewtonBody* m_objBody; | + | NewtonBody* m_objBody; // READ: Body that is colliding with user mesh |
− | NewtonBody* m_polySoupBody; | + | NewtonBody* m_polySoupBody; // READ: User mesh collision |
NewtonCollision* m_objCollision; // READ: collision shape of body that is colliding with user mesh | NewtonCollision* m_objCollision; // READ: collision shape of body that is colliding with user mesh | ||
NewtonCollision* m_polySoupCollision; // READ: collision shape of user mesh collision | NewtonCollision* m_polySoupCollision; // READ: collision shape of user mesh collision | ||
− | dFloat* m_vertex; | + | dFloat* m_vertex; // OUT: App should set this pointer to the vertex array for the intersection polygon set. |
− | int* m_faceIndexCount; | + | int* m_faceIndexCount; // OUT: App should set here the pointer to the vertex count of each face. |
− | int* m_faceVertexIndex; | + | int* m_faceVertexIndex; // OUT: App should set here the pointer index array for each vertex on a face. |
} NewtonUserMeshCollisionCollideDesc; | } NewtonUserMeshCollisionCollideDesc; | ||
</source> | </source> |
Revision as of 09:03, 3 October 2019
typedef struct NewtonUserMeshCollisionCollideDesc
{
dFloat m_boxP0[4]; // READ: lower bounding box of intersection query in local space
dFloat m_boxP1[4]; // READ: upper bounding box of intersection query in local space
dFloat m_boxDistanceTravel[4]; // OUT: max distance that box bpxP0 and boxP1 can travel on this timestep, used this for continue collision mode.
int m_threadNumber; // READ: index of newton thread that called callback
int m_faceCount; // OUT: App should set this to the number of faces in the returned polygon set.
int m_vertexStrideInBytes; // OUT: App should set here the size of each vertex.
dFloat m_skinThickness; // OUT: this is the minimum skin separation specified by the material between these two colliding shapes
void* m_userData; // READ: UserData of user mesh collision
NewtonBody* m_objBody; // READ: Body that is colliding with user mesh
NewtonBody* m_polySoupBody; // READ: User mesh collision
NewtonCollision* m_objCollision; // READ: collision shape of body that is colliding with user mesh
NewtonCollision* m_polySoupCollision; // READ: collision shape of user mesh collision
dFloat* m_vertex; // OUT: App should set this pointer to the vertex array for the intersection polygon set.
int* m_faceIndexCount; // OUT: App should set here the pointer to the vertex count of each face.
int* m_faceVertexIndex; // OUT: App should set here the pointer index array for each vertex on a face.
} NewtonUserMeshCollisionCollideDesc;