From 001718224eece68d2f95493c0b29c7b92c6d0324 Mon Sep 17 00:00:00 2001 From: Sam Gateau Date: Wed, 2 Oct 2019 14:39:00 -0700 Subject: [PATCH] fine tune the recent changes to be able to return to rendering of the hfm::Mesh loaded, not the shapes yet --- .../model-baker/src/model-baker/BuildGraphicsMeshTask.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libraries/model-baker/src/model-baker/BuildGraphicsMeshTask.cpp b/libraries/model-baker/src/model-baker/BuildGraphicsMeshTask.cpp index deacd6a977..8c27968de9 100644 --- a/libraries/model-baker/src/model-baker/BuildGraphicsMeshTask.cpp +++ b/libraries/model-baker/src/model-baker/BuildGraphicsMeshTask.cpp @@ -95,7 +95,7 @@ void buildGraphicsMesh(const hfm::Mesh& hfmMesh, graphics::MeshPointer& graphics HIFI_FCDEBUG_ID(model_baker(), repeatMessageID, "BuildGraphicsMeshTask -- The number of indices and weights for a deformer had different sizes and have been trimmed to match"); } // Record cluster sizes - const size_t numVertClusters = reweightedDeformers.indices.size() / reweightedDeformers.weightsPerVertex; + const size_t numVertClusters = (reweightedDeformers.weightsPerVertex ? hfmMesh.clusterIndices.size() / reweightedDeformers.weightsPerVertex : 0); const size_t clusterIndicesSize = numVertClusters * clusterIndiceElement.getSize(); const size_t clusterWeightsSize = numVertClusters * clusterWeightElement.getSize(); @@ -404,8 +404,10 @@ void BuildGraphicsMeshTask::run(const baker::BakeContextPointer& context, const uint16_t numDeformerControllers = 0; if (reweightedDeformers.weightsPerVertex != 0) { uint32_t dynamicTransformIndex = dynamicTransformPerMesh[i]; - const hfm::DynamicTransform& dynamicTransform = dynamicTransforms[dynamicTransformIndex]; - numDeformerControllers = (uint16_t)dynamicTransform.deformers.size(); + if (dynamicTransformIndex != hfm::UNDEFINED_KEY) { + const hfm::DynamicTransform& dynamicTransform = dynamicTransforms[dynamicTransformIndex]; + numDeformerControllers = (uint16_t)dynamicTransform.deformers.size(); + } } // Try to create the graphics::Mesh