From 3f38bf1f0bcf7d240f825bc3f619cd97547e4a25 Mon Sep 17 00:00:00 2001 From: Ansariel Date: Thu, 5 Nov 2015 13:35:13 +0100 Subject: [PATCH] FIRE-17144: Option to rig to attachment spots --- indra/llprimitive/llmodelloader.cpp | 31 +++++++++++++++++++++++++ indra/newview/app_settings/settings.xml | 11 +++++++++ 2 files changed, 42 insertions(+) diff --git a/indra/llprimitive/llmodelloader.cpp b/indra/llprimitive/llmodelloader.cpp index f86eceb98d..996f115314 100644 --- a/indra/llprimitive/llmodelloader.cpp +++ b/indra/llprimitive/llmodelloader.cpp @@ -33,6 +33,8 @@ #include "llmatrix4a.h" #include +#include "../llxml/llcontrol.h" + std::list LLModelLoader::sActiveLoaderList; void stretch_extents(LLModel* model, LLMatrix4a& mat, LLVector4a& min, LLVector4a& max, BOOL& first_transform) @@ -207,6 +209,35 @@ LLModelLoader::LLModelLoader( mJointMap["lShin"] = "mKneeLeft"; mJointMap["lFoot"] = "mFootLeft"; + // FIRE-17144: Option to rig to attachment spots + if (LLControlGroup::getInstance("Global")->getBOOL("FSEnableRiggingToAttachmentSpots")) + { + mJointMap["Right_Ear"] = "Right Ear"; + mJointMap["Left_Ear"] = "Left Ear"; + mJointMap["Right_Eyeball"] = "Right Eyeball"; + mJointMap["Left_Eyeball"] = "Left Eyeball"; + mJointMap["Right_Shoulder"] = "Right Shoulder"; + mJointMap["Left_Shoulder"] = "Left Shoulder"; + mJointMap["R_Upper_Arm"] = "R Upper Arm"; + mJointMap["L_Upper_Arm"] = "L Upper Arm"; + mJointMap["R_Forearm"] = "R Forearm"; + mJointMap["L_Forearm"] = "L Forearm"; + mJointMap["Right_Hand"] = "Right Hand"; + mJointMap["Left_Hand"] = "Left Hand"; + mJointMap["Right_Pec"] = "Right Pec"; + mJointMap["Left_Pec"] = "Left Pec"; + mJointMap["Avatar_Center"] = "Avatar Center"; + mJointMap["Right_Hip"] = "Right Hip"; + mJointMap["Left_Hip"] = "Left Hip"; + mJointMap["R_Upper_Leg"] = "R Upper Leg"; + mJointMap["L_Upper_Leg"] = "L Upper Leg"; + mJointMap["R_Lower_Leg"] = "R Lower Leg"; + mJointMap["R_Lower_Leg"] = "R Lower Leg"; + mJointMap["Right_Foot"] = "Right Foot"; + mJointMap["Left_Foot"] = "Left Foot"; + } + // + //move into joint mapper class //1. joints for joint offset verification mMasterJointList.push_front("mPelvis"); diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 9f3cbfed72..92d2ccd476 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -23693,6 +23693,17 @@ Change of this parameter will affect the layout of buttons in notification toast Value 20 + FSEnableRiggingToAttachmentSpots + + Comment + Enable upload of mesh models rigged to attachment spots + Persist + 1 + Type + Boolean + Value + 0 +