@ -1232,24 +1232,21 @@ hsBool plClothingOutfit::MsgReceive(plMessage* msg)
if ( fAvatar & & fGroup ! = plClothingMgr : : kClothingBaseNoOptions )
if ( fAvatar & & fGroup ! = plClothingMgr : : kClothingBaseNoOptions )
{
{
plDrawable * spans = fAvatar - > FindDrawable ( ) ;
plDrawable * spans = fAvatar - > FindDrawable ( ) ;
const hsBounds3Ext & bnds = spans - > GetWorldBounds ( ) ;
// This is a bit hacky... The drawable code has just run through and updated
if ( bnds . GetType ( ) = = kBoundsNormal )
// each span's bounds (see plDrawableSpans::IUpdateMatrixPaletteBoundsHack())
{
// but not the world bounds for the entire drawable. So we tell the space tree
// This is a bit hacky... The drawable code has just run through and updated
// to refresh. However, the pageTreeMgr would then get confused because the
// each span's bounds (see plDrawableSpans::IUpdateMatrixPaletteBoundsHack())
// space tree is no longer dirty (see plPageTreeMgr::IRefreshTree()),
// but not the world bounds for the entire drawable. So we tell the space tree
// causing the avatar to only draw if the origin is in view.
// to refresh. However, the pageTreeMgr would then get confused because the
// So we just force it dirty, and everyone's happy.
// space tree is no longer dirty (see plPageTreeMgr::IRefreshTree()),
spans - > GetSpaceTree ( ) - > Refresh ( ) ;
// causing the avatar to only draw if the origin is in view.
spans - > GetSpaceTree ( ) - > MakeDirty ( ) ;
// So we just force it dirty, and everyone's happy.
spans - > GetSpaceTree ( ) - > Refresh ( ) ;
// Where were we? Oh yeah... if this avatar is in view it needs a texture. Tell
spans - > GetSpaceTree ( ) - > MakeDirty ( ) ;
// the pipeline.
const hsBounds3Ext & bnds = spans - > GetSpaceTree ( ) - > GetWorldBounds ( ) ;
// Where were we? Oh yeah... if this avatar is in view it needs a texture. Tell
if ( ( bnds . GetType ( ) = = kBoundsNormal ) & & preMsg - > Pipeline ( ) - > TestVisibleWorld ( bnds ) )
// the pipeline.
preMsg - > Pipeline ( ) - > SubmitClothingOutfit ( this ) ;
if ( preMsg - > Pipeline ( ) - > TestVisibleWorld ( spans - > GetSpaceTree ( ) - > GetWorldBounds ( ) ) )
preMsg - > Pipeline ( ) - > SubmitClothingOutfit ( this ) ;
}
}
}
}
}