experimental workaround to non-rigged to rigged transition bug

meow-7.2.2
Beq 2023-02-10 02:55:19 +00:00
parent 712031bb2f
commit 9d34700179
1 changed files with 12 additions and 3 deletions

View File

@ -778,9 +778,18 @@ void LLLocalMeshFile::applyToVObject(LLUUID viewer_object_id, int object_index,
// force refresh (selected/edit mode won't let it redraw otherwise)
auto& target_drawable = target_object->mDrawable;
target_drawable->getVOVolume()->forceLOD(LLModel::LOD_LOW);
target_drawable->getVOVolume()->forceLOD(LLModel::LOD_HIGH);
gPipeline.markRebuild(target_drawable, LLDrawable::REBUILD_VOLUME, FALSE);
if( target_drawable.notNull() )
{
target_object->markForUpdate(true);
// target_drawable->updateSpatialExtents();
// target_drawable->movePartition();
gPipeline.markRebuild(target_drawable, LLDrawable::REBUILD_ALL, true);
if(auto floater_ptr = LLLocalMeshSystem::getInstance()->getFloaterPointer(); floater_ptr != nullptr)
{
floater_ptr->toggleSelectTool(false);
}
}
// NOTE: this ^^ (or lod change) causes renderer crash on mesh with degenerate primitives.
LL_INFOS("LocalMesh") << "Object " << object_index << " marked for rebuild" << LL_ENDL;
}