mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
Fixed bug
This commit is contained in:
parent
2b94b2ff26
commit
5023050fbb
@ -29,6 +29,7 @@ int OdeSpace::contact_ids[128];
|
|||||||
OdeSpace::
|
OdeSpace::
|
||||||
OdeSpace(dSpaceID id) :
|
OdeSpace(dSpaceID id) :
|
||||||
_id(id) {
|
_id(id) {
|
||||||
|
my_world = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
OdeSpace::
|
OdeSpace::
|
||||||
@ -104,11 +105,16 @@ set_auto_collide_joint_group(OdeJointGroup &joint_group)
|
|||||||
int OdeSpace::
|
int OdeSpace::
|
||||||
autoCollide()
|
autoCollide()
|
||||||
{
|
{
|
||||||
OdeSpace::contactCount = 0;
|
if (my_world == NULL) {
|
||||||
_collide_space = this;
|
odespace_cat.error() << "No collide world has been set!\n";
|
||||||
_collide_world = my_world;
|
return 0;
|
||||||
dSpaceCollide(_id, this, &autoCallback);
|
} else {
|
||||||
return OdeSpace::contactCount;
|
OdeSpace::contactCount = 0;
|
||||||
|
_collide_space = this;
|
||||||
|
_collide_world = my_world;
|
||||||
|
dSpaceCollide(_id, this, &autoCallback);
|
||||||
|
return OdeSpace::contactCount;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
double OdeSpace::
|
double OdeSpace::
|
||||||
@ -155,6 +161,7 @@ autoCallback(void *data, dGeomID o1, dGeomID o2)
|
|||||||
int surface1 = _collide_space->get_surface_type(o1);
|
int surface1 = _collide_space->get_surface_type(o1);
|
||||||
int surface2 = _collide_space->get_surface_type(o2);
|
int surface2 = _collide_space->get_surface_type(o2);
|
||||||
|
|
||||||
|
nassertv(_collide_world != NULL);
|
||||||
sSurfaceParams collide_params;
|
sSurfaceParams collide_params;
|
||||||
collide_params = _collide_world->get_surface(surface1, surface2);
|
collide_params = _collide_world->get_surface(surface1, surface2);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user