Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm into jp-translation
commit
2d79e0337e
|
|
@ -26220,5 +26220,16 @@ Change of this parameter will affect the layout of buttons in notification toast
|
|||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>FSLocalMeshApplyJointOffsets</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>use joint offsets if they are present</string>
|
||||
<key>Persist</key>
|
||||
<integer>0</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
</map>
|
||||
</llsd>
|
||||
|
|
|
|||
|
|
@ -3147,10 +3147,10 @@ void LLPanelProfileNotes::updateData()
|
|||
#ifdef OPENSIM
|
||||
if (LLGridManager::instance().isInOpenSim() && gAgent.getRegionCapability(PROFILE_PROPERTIES_CAP).empty())
|
||||
{
|
||||
LLUUID avatar_id = getAvatarId();
|
||||
if (!getStarted() && avatar_id.notNull() && gAgent.getRegionCapability(PROFILE_PROPERTIES_CAP).empty() && !getSelfProfile())
|
||||
{
|
||||
setIsLoading();
|
||||
LLUUID avatar_id = getAvatarId();
|
||||
if (!getStarted() && avatar_id.notNull())
|
||||
{
|
||||
setIsLoading();
|
||||
LLAvatarPropertiesProcessor::getInstance()->sendAvatarNotesRequest(avatar_id);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1032,8 +1032,6 @@
|
|||
max_val="5"
|
||||
top_delta="-2"
|
||||
width="127">
|
||||
<slider_bar.commit_callback
|
||||
function="Advanced.ClearShaderCache" />
|
||||
</slider_bar>
|
||||
<spinner
|
||||
name="S_Shadow_Res"
|
||||
|
|
@ -1047,8 +1045,6 @@
|
|||
min_val="0"
|
||||
width="53"
|
||||
increment="0.5">
|
||||
<spinner.commit_callback
|
||||
function="Advanced.ClearShaderCache" />
|
||||
</spinner>
|
||||
<button
|
||||
follows="left|top"
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
can_resize="true"
|
||||
can_dock="false"
|
||||
can_close="true"
|
||||
height="300"
|
||||
height="305"
|
||||
width="505"
|
||||
min_width="505"
|
||||
min_height="300"
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
follows="top|left|right|bottom"
|
||||
top="20"
|
||||
left="0"
|
||||
height="223"
|
||||
height="233"
|
||||
width="500"
|
||||
tab_position="top"
|
||||
enable_tabs_flashing="true"
|
||||
|
|
@ -114,6 +114,15 @@
|
|||
width="300"
|
||||
label="Assume scale is in meters."
|
||||
tool_tip="Ignore the cm scale units used by tools such as Maya" />
|
||||
<check_box name="local_mesh_scale_use_meters"
|
||||
height="15"
|
||||
control_name="FSLocalMeshApplyJointOffsets"
|
||||
follows="top|left"
|
||||
top_pad="5"
|
||||
left="8"
|
||||
width="300"
|
||||
label="Apply joint offsets."
|
||||
tool_tip="Apply any joint offsets in the mesh, by default these are ignored." />
|
||||
<text name="lod_suffix_label"
|
||||
follows="left|top"
|
||||
layout="topleft"
|
||||
|
|
@ -256,7 +265,6 @@
|
|||
label="Apply"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
top="253"
|
||||
width="90"
|
||||
visible="true" />
|
||||
<combo_box name="object_apply_list"
|
||||
|
|
@ -264,7 +272,7 @@
|
|||
layout="topleft"
|
||||
follows="bottom"
|
||||
left="105"
|
||||
top="253"
|
||||
top_delta="0"
|
||||
width="315"
|
||||
visible="true" />
|
||||
<button name="btn_add"
|
||||
|
|
@ -272,7 +280,6 @@
|
|||
label="Add"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
top="275"
|
||||
width="90"
|
||||
visible="true" />
|
||||
<button name="btn_remove"
|
||||
|
|
@ -280,7 +287,7 @@
|
|||
label="Remove"
|
||||
layout="topleft"
|
||||
left="105"
|
||||
top="275"
|
||||
top_delta="0"
|
||||
width="90"
|
||||
visible="true" />
|
||||
<button name="btn_reload"
|
||||
|
|
@ -288,7 +295,7 @@
|
|||
label="Reload"
|
||||
layout="topleft"
|
||||
left="200"
|
||||
top="275"
|
||||
top_delta="0"
|
||||
width="90"
|
||||
visible="true" />
|
||||
<button name="btn_clear"
|
||||
|
|
@ -296,7 +303,7 @@
|
|||
label="Clear"
|
||||
layout="topleft"
|
||||
left="295"
|
||||
top="275"
|
||||
top_delta="0"
|
||||
width="90"
|
||||
visible="true" />
|
||||
<button name="btn_rez"
|
||||
|
|
@ -305,7 +312,7 @@
|
|||
tool_tip="Create a donor mesh inworld and populate with selected local mesh. This creates an empty object in-world."
|
||||
layout="topleft"
|
||||
left="390"
|
||||
top="275"
|
||||
top_delta="0"
|
||||
width="90"
|
||||
visible="true" />
|
||||
</floater>
|
||||
|
|
|
|||
|
|
@ -753,34 +753,36 @@ bool LLLocalMeshImportDAE::processSkin(daeDatabase* collada_db, daeElement* coll
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
int jointname_idx = 0;
|
||||
for (auto jointname_iterator = skininfop->mJointNames.begin(); jointname_iterator != skininfop->mJointNames.end(); ++jointname_iterator, ++jointname_idx)
|
||||
static LLCachedControl<bool> apply_joint_offsets(gSavedSettings, "FSLocalMeshApplyJointOffsets");
|
||||
if (apply_joint_offsets)
|
||||
{
|
||||
std::string name_lookup = jointname_iterator->mName;
|
||||
if (joint_map.find(name_lookup) == joint_map.end())
|
||||
int jointname_idx = 0;
|
||||
for (auto jointname_iterator = skininfop->mJointNames.begin();
|
||||
jointname_iterator != skininfop->mJointNames.end();
|
||||
++jointname_iterator, ++jointname_idx)
|
||||
{
|
||||
pushLog("DAE Importer", "WARNING: Unknown joint named " + name_lookup + " found, skipping over it.");
|
||||
continue;
|
||||
std::string name_lookup = jointname_iterator->mName;
|
||||
if (joint_map.find(name_lookup) == joint_map.end())
|
||||
{
|
||||
pushLog("DAE Importer", "WARNING: Unknown joint named " + name_lookup + " found, skipping over it.");
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_DEBUGS("LocalMesh") << "Calc invBindMat for joint name: " << name_lookup << LL_ENDL;
|
||||
}
|
||||
if (skininfop->mInvBindMatrix.size() <= jointname_idx)
|
||||
{
|
||||
pushLog("DAE Importer", "WARNING: Requesting out of bounds joint named " + name_lookup);
|
||||
break;
|
||||
}
|
||||
LLMatrix4 newinverse = LLMatrix4(skininfop->mInvBindMatrix[jointname_idx].getF32ptr());
|
||||
const auto& joint_translation = joint_transforms[name_lookup].getTranslation();
|
||||
newinverse.setTranslation(joint_translation);
|
||||
skininfop->mAlternateBindMatrix.push_back(LLMatrix4a(newinverse));
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_DEBUGS("LocalMesh") << "Calc invBindMat for joint name: " << name_lookup << LL_ENDL;
|
||||
}
|
||||
|
||||
if (skininfop->mInvBindMatrix.size() <= jointname_idx)
|
||||
{
|
||||
// doesn't seem like a critical fail that should invalidate the entire skin, just break and move on?
|
||||
pushLog("DAE Importer", "WARNING: Requesting out of bounds joint named " + name_lookup);
|
||||
break;
|
||||
}
|
||||
|
||||
LLMatrix4 newinverse = LLMatrix4(skininfop->mInvBindMatrix[jointname_idx].getF32ptr());
|
||||
const auto& joint_translation = joint_transforms[name_lookup].getTranslation();
|
||||
newinverse.setTranslation(joint_translation);
|
||||
skininfop->mAlternateBindMatrix.push_back( LLMatrix4a(newinverse) );
|
||||
}
|
||||
|
||||
|
||||
size_t bind_count = skininfop->mAlternateBindMatrix.size();
|
||||
if ((bind_count > 0) && (bind_count != skininfop->mJointNames.size()))
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue