summaryrefslogtreecommitdiff
path: root/indra/llprimitive/lldaeloader.cpp
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2022-09-12 19:48:33 -0500
committerDave Parks <davep@lindenlab.com>2022-09-12 19:48:33 -0500
commite49d602bd99f5a3b1257ba1bc7ded133eab1eb1c (patch)
tree403cf561e8a8d3524de9eb27943310383e94250e /indra/llprimitive/lldaeloader.cpp
parentc5af5d10edb26d255d0aa2e27eedbbd3f514024e (diff)
SL-18095 Add tangents to mesh assets so we can calculate mikktspace tangents in the mesh's original coordinate frame.
Diffstat (limited to 'indra/llprimitive/lldaeloader.cpp')
-rw-r--r--indra/llprimitive/lldaeloader.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/indra/llprimitive/lldaeloader.cpp b/indra/llprimitive/lldaeloader.cpp
index 50f4a4306e..9470146ce4 100644
--- a/indra/llprimitive/lldaeloader.cpp
+++ b/indra/llprimitive/lldaeloader.cpp
@@ -2551,6 +2551,9 @@ bool LLDAELoader::loadModelsFromDomMesh(domMesh* mesh, std::vector<LLModel*>& mo
LLVolume::face_list_t remainder;
do
{
+ // generate tangents and cache optimize before normalizing
+ ret->preprocessVolumeFaces();
+
// Insure we do this once with the whole gang and not per-model
//
if (!normalized && !mNoNormalize)
@@ -2561,10 +2564,11 @@ bool LLDAELoader::loadModelsFromDomMesh(domMesh* mesh, std::vector<LLModel*>& mo
ret->trimVolumeFacesToSize(LL_SCULPT_MESH_MAX_FACES, &remainder);
- if (!mNoOptimize)
- {
- ret->remapVolumeFaces();
- }
+ // remove unused/redundant vertices after normalizing
+ //if (!mNoOptimize)
+ //{
+ // ret->remapVolumeFaces();
+ //}
volume_faces = remainder.size();