From a6d8e150f00cac24c571052e20ef88435584c761 Mon Sep 17 00:00:00 2001 From: David Rowe Date: Wed, 21 Apr 2021 09:47:24 +1200 Subject: [PATCH] Move and rename ReadyPlayerMe synonyms --- .../model-serializers/src/GLTFSerializer.cpp | 4 ++-- libraries/shared/src/BlendshapeConstants.cpp | 18 ++++++++++++++++++ libraries/shared/src/BlendshapeConstants.h | 19 +------------------ 3 files changed, 21 insertions(+), 20 deletions(-) diff --git a/libraries/model-serializers/src/GLTFSerializer.cpp b/libraries/model-serializers/src/GLTFSerializer.cpp index 092fa3d694..1c1e45fbf3 100755 --- a/libraries/model-serializers/src/GLTFSerializer.cpp +++ b/libraries/model-serializers/src/GLTFSerializer.cpp @@ -1572,8 +1572,8 @@ bool GLTFSerializer::buildGeometry(HFMModel& hfmModel, const hifi::VariantHash& } // Augment list of blendshapes from synonyms in model. - QMap>::const_iterator synonym = BLENDSHAPE_SYNONYMS_MAP.constBegin(); - while (synonym != BLENDSHAPE_SYNONYMS_MAP.constEnd()) { + QMap>::const_iterator synonym = READYPLAYERME_BLENDSHAPES_MAP.constBegin(); + while (synonym != READYPLAYERME_BLENDSHAPES_MAP.constEnd()) { if (_file.meshes[node.mesh].extras.targetNames.contains(synonym.key())) { auto blendshape = BLENDSHAPE_LOOKUP_MAP.find(synonym.value().first); if (blendshape != BLENDSHAPE_LOOKUP_MAP.end()) { diff --git a/libraries/shared/src/BlendshapeConstants.cpp b/libraries/shared/src/BlendshapeConstants.cpp index 9035b10529..39641851b6 100644 --- a/libraries/shared/src/BlendshapeConstants.cpp +++ b/libraries/shared/src/BlendshapeConstants.cpp @@ -84,3 +84,21 @@ const QMap BLENDSHAPE_LOOKUP_MAP = [] { } return toReturn; }(); + +const QMap> READYPLAYERME_BLENDSHAPES_MAP = { + // ReadyPlayerMe blendshape synonyms. + {"browDownLeft", {"BrowsD_L", 0.5f}}, + {"browDownRight", {"BrowsD_R", 0.5f}}, + {"browInnerUp", {"BrowsU_C", 0.3f}}, + {"browOuterUpLeft", {"BrowsU_L", 0.3f}}, + {"browOuterUpRight", {"BrowsU_R", 0.3f}}, + {"eyeBlinkLeft", {"EyeBlink_L", 1.0f}}, + {"eyeBlinkRight", {"EyeBlink_R", 1.0f}}, + {"eyeWideLeft", {"EyeOpen_L", 1.0f}}, + {"eyeWideRight", {"EyeOpen_R", 1.0f}}, + {"mouthLeft", {"MouthSmile_L", 0.6f}}, + {"mouthOpen", {"JawOpen", 1.0f}}, + {"mouthRight", {"MouthSmile_R", 0.6f}}, + {"mouthShrugLower", {"LipsUpperClose", 0.1f}}, + {"viseme_O", {"LipsFunnel", 0.5f}} +}; diff --git a/libraries/shared/src/BlendshapeConstants.h b/libraries/shared/src/BlendshapeConstants.h index 47e887cf57..b2a6630224 100644 --- a/libraries/shared/src/BlendshapeConstants.h +++ b/libraries/shared/src/BlendshapeConstants.h @@ -20,6 +20,7 @@ /// The names of the supported blendshapes, terminated with an empty string. extern const char* BLENDSHAPE_NAMES[]; extern const QMap BLENDSHAPE_LOOKUP_MAP; +extern const QMap> READYPLAYERME_BLENDSHAPES_MAP; enum class Blendshapes : int { EyeBlink_L = 0, @@ -113,24 +114,6 @@ enum class Blendshapes : int { // * LipsUpperOpen (not in ARKit) // * LipsLowerOpen (not in ARKit) -const QMap> BLENDSHAPE_SYNONYMS_MAP { - // ReadyPlayerMe - {"browDownLeft", {"BrowsD_L", 0.5f}}, - {"browDownRight", {"BrowsD_R", 0.5f}}, - {"browInnerUp", {"BrowsU_C", 0.3f}}, - {"browOuterUpLeft", {"BrowsU_L", 0.3f}}, - {"browOuterUpRight", {"BrowsU_R", 0.3f}}, - {"eyeBlinkLeft", {"EyeBlink_L", 1.0f}}, - {"eyeBlinkRight", {"EyeBlink_R", 1.0f}}, - {"eyeWideLeft", {"EyeOpen_L", 1.0f}}, - {"eyeWideRight", {"EyeOpen_R", 1.0f}}, - {"mouthLeft", {"MouthSmile_L", 0.6f}}, - {"mouthOpen", {"JawOpen", 1.0f}}, - {"mouthRight", {"MouthSmile_R", 0.6f}}, - {"mouthShrugLower", {"LipsUpperClose", 0.1f}}, - {"viseme_O", {"LipsFunnel", 0.5f}} -}; - struct BlendshapeOffsetPacked { glm::uvec4 packedPosNorTan; };