Move BVH active visualization flag reset after early return check in MuJoCo collision driver.
This avoids unnecessarily resetting the bvh_active flags when the collision driver returns early due to disabled constraints, disabled contacts, or having fewer than two bodies/flexes. PiperOrigin-RevId: 959531283 Change-Id: I85caf054b06e3be1018d710f9ab762627fc3356a
This commit is contained in:
committed by
Copybara-Service
parent
f9a00bd5b5
commit
1362a8bded
@@ -599,17 +599,17 @@ void mj_collision(const mjModel* m, mjData* d) {
|
||||
resetArena(d);
|
||||
mj_clearEfc(d);
|
||||
|
||||
// reset the visualization flags
|
||||
if (m->vis.global.bvactive) {
|
||||
memset(d->bvh_active, 0, m->nbvh);
|
||||
}
|
||||
|
||||
// return if disabled
|
||||
if (mjDISABLED(mjDSBL_CONSTRAINT) || mjDISABLED(mjDSBL_CONTACT) || nbodyflex < 2) {
|
||||
TM_END1(mjTIMER_POS_COLLISION);
|
||||
return;
|
||||
}
|
||||
|
||||
// reset the visualization flags
|
||||
if (m->vis.global.bvactive) {
|
||||
memset(d->bvh_active, 0, m->nbvh);
|
||||
}
|
||||
|
||||
mj_markStack(d);
|
||||
|
||||
// broadphase collision detector
|
||||
|
||||
@@ -144,7 +144,7 @@ void mj_defaultVisual(mjVisual* vis) {
|
||||
vis->global.offheight = 480;
|
||||
vis->global.realtime = 1.0;
|
||||
vis->global.ellipsoidinertia = 0;
|
||||
vis->global.bvactive = 1;
|
||||
vis->global.bvactive = 0;
|
||||
|
||||
// rendering quality
|
||||
vis->quality.shadowsize = 4096;
|
||||
|
||||
Reference in New Issue
Block a user