diff options
| author | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-08-10 22:28:07 +0300 |
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-08-11 17:15:52 +0300 |
| commit | e7768343db0b80f6f68bef767779816aea5ad516 (patch) | |
| tree | e13dd83ab9f116360fd55f2a4eac6438c4a283ed /indra/newview/lltoolmorph.cpp | |
| parent | f6af7f4d8be9f2794d16745b2509f135dcdf066b (diff) | |
#6071 Fix WT_SKIRT not being rendered
Diffstat (limited to 'indra/newview/lltoolmorph.cpp')
| -rw-r--r-- | indra/newview/lltoolmorph.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/indra/newview/lltoolmorph.cpp b/indra/newview/lltoolmorph.cpp index a545d32d12..11dd26309e 100644 --- a/indra/newview/lltoolmorph.cpp +++ b/indra/newview/lltoolmorph.cpp @@ -192,17 +192,20 @@ void LLVisualParamHint::preRender(bool clear_depth) gAgentAvatarp->updateGeometry(gAgentAvatarp->mDrawable); gAgentAvatarp->updateLOD(); - if (gAgentAvatarp->mDrawable->isState(LLDrawable::REBUILD_GEOMETRY)) + if (gAgentAvatarp->mDrawable->isState(LLDrawable::REBUILD_GEOMETRY) + || gAgentAvatarp->mDirtyMesh > 0) { - LL_WARNS_ONCE("ParamHint") << "preRender: clearing REBUILD_GEOMETRY after updateGeometry/updateLOD" + // updateLOD marks meshes for an update. + LL_DEBUGS("ParamHint") << "preRender: updateMeshData" << " param=" << mVisualParam->getName() << " dirtyMesh=" << gAgentAvatarp->mDirtyMesh + << " rebuildGeom=" << gAgentAvatarp->mDrawable->isState(LLDrawable::REBUILD_GEOMETRY) << LL_ENDL; - // Clear REBUILD_GEOMETRY so that renderSkinned inside generateImpostor + // Clear states and force update so that renderSkinned inside generateImpostor // does not re-run updateMeshData() with a partially consistent mesh state, // which would reassign mFace pointers on some meshes while others are // mid-draw with stale vertex offsets. - gAgentAvatarp->mDrawable->clearState(LLDrawable::REBUILD_GEOMETRY); + gAgentAvatarp->updateMeshData(); } } else |
