static void space_geom_collider (Object data, DxGeom o1, DxGeom o2) { SpaceGeomColliderData d = (SpaceGeomColliderData) data; if ((d.flags & DxGeom.NUMC_MASK) != 0) { // int n = dCollide (o1,o2,d.flags,d.contact,d.skip); // d.contact = CONTACT (d.contact,d.skip*n); // int n = DxGeom.dCollide (o1,o2,d.flags,d._contacts, d.skip); //d.contact = CONTACT (d.contact,d.skip*n); //d.contact = ((SpaceGeomColliderData)data).contact[n]; d._contacts = ((SpaceGeomColliderData)data)._contacts.createView(n); d.flags -= n; } }
static void space_geom_collider (Object data, DxGeom o1, DxGeom o2) { SpaceGeomColliderData d = (SpaceGeomColliderData) data; if ((d.flags & DxGeom.NUMC_MASK) != 0) { // int n = dCollide (o1,o2,d.flags,d.contact,d.skip); // d.contact = CONTACT (d.contact,d.skip*n); // int n = DxGeom.dCollide (o1,o2,d.flags,d._contacts, d.skip); //d.contact = CONTACT (d.contact,d.skip*n); //d.contact = ((SpaceGeomColliderData)data).contact[n]; d._contacts = ((SpaceGeomColliderData)data)._contacts.createView(n); d.flags -= n; } }
DContactGeomBuffer c2 = contacts.createView(skip); int n2 = DxCollisionUtil.dCollideSpheres (sphere1,cyl1._radius, sphere2,cyl2._radius, c2);
DContactGeomBuffer c2 = contacts.createView(skip); int n2 = DxCollisionUtil.dCollideSpheres (sphere1,cyl1._radius, sphere2,cyl2._radius, c2);
flags, contacts.createView(numTerrainContacts*skip), skip ); dIASSERT( numTerrainContacts <= numMaxTerrainContacts );
flags, contacts.createView(numTerrainContacts*skip), skip ); dIASSERT( numTerrainContacts <= numMaxTerrainContacts );
flags, contacts.createView(numTerrainContacts*skip), skip ); dIASSERT( numTerrainContacts <= numMaxTerrainContacts );
flags, contacts.createView(numTerrainContacts*skip), skip ); dIASSERT( numTerrainContacts <= numMaxTerrainContacts );