# [ODE] Trimesh - box collision problem

Matthias Weigand weigole at gmx.de
Tue Jan 24 03:05:33 MST 2006

```Hi,

I have some weird collision problems with a trimesh and a box. Below I'm
building up a triangle mesh with simply two triangles. And test it
against a box, that should definitly collide with the first triangle.
But in the code below it does not collide, until I do one of the following:
- Pass 3 instead of 6 to the indexCount parameter of
dGeomTriMeshDataBuildSimple.
- Set the height of the second triangle to 60.
- Link the program against the debug build of ODE's library (producing
debugging symbols was essential)

int main()
{
//vertices
//colliding triangle
dVector3 v[6];
v[0][0] = 0;
v[0][1] = 74;
v[0][2] = 16;

v[1][0] = 16;
v[1][1] = 74;
v[1][2] = 16;

v[2][0] = 16;
v[2][1] = 74;
v[2][2] = 0;

//useless triangle
v[3][0] = 0;
v[3][1] = 0;
v[3][2] = 1;

v[4][0] = 1;
v[4][1] = 0;
v[4][2] = 0;

v[5][0] = 1;
v[5][1] = 0;
v[5][2] = 1;

//indices
int32 i[6];
for (int32 s=0; s < 6; s++) i[s] = s;

dTriMeshDataID tridata = dGeomTriMeshDataCreate();
dGeomTriMeshDataBuildSimple(tridata, (dReal*)v, 6, i, 6);
dGeomID mesh = dCreateTriMesh(0, tridata,NULL,NULL,NULL);

dGeomID boxt = dCreateBox(0,5,5,5);
dGeomSetPosition(boxt,16,76,8);

dContactGeom g;
cout << dCollide(boxt,mesh,1,&g,sizeof(dContactGeom));

return 0;
}

What the hell is going on here?

BTW: A sphere behaves correctly.

Thanks for help,
weigo
```