summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2011-03-18 16:04:28 -0400
committerLoren Shih <seraph@lindenlab.com>2011-03-18 16:04:28 -0400
commit86613fd388d7985abc814ee8ee52da54fd74779e (patch)
tree08e74b89b69e21ce0d610af851e155831bf66380 /indra
parentd55f816fb15eab67abb72997b2eb589fff16f4ee (diff)
Variety of fixes for param ranges.
Turned off normal/binormal effects for morphing. Fixed issue where updates were always being sent even if below the change threshold.
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/character/avatar_lad.xml18
-rw-r--r--indra/newview/llphysicsmotion.cpp6
-rw-r--r--indra/newview/llpolymesh.cpp64
3 files changed, 48 insertions, 40 deletions
diff --git a/indra/newview/character/avatar_lad.xml b/indra/newview/character/avatar_lad.xml
index 0fc62ccaf1..727a9e7fc4 100644
--- a/indra/newview/character/avatar_lad.xml
+++ b/indra/newview/character/avatar_lad.xml
@@ -9180,7 +9180,7 @@ render_pass="bump">
label_max="More"
value_default="0"
value_min="0"
- value_max="100"
+ value_max="1"
camera_elevation=".3"
camera_distance=".8">
<param_driver />
@@ -9196,9 +9196,9 @@ render_pass="bump">
edit_group="physics"
label_min="Less"
label_max="More"
- value_default="3"
+ value_default=".1"
value_min="0"
- value_max="10"
+ value_max="1"
camera_elevation=".3"
camera_distance=".8">
<param_driver />
@@ -9215,7 +9215,7 @@ render_pass="bump">
label_min="Less"
label_max="More"
value_default="10"
- value_min="0"
+ value_min="1"
value_max="100"
camera_elevation=".3"
camera_distance=".8">
@@ -9268,9 +9268,9 @@ render_pass="bump">
edit_group="physics"
label_min="Less"
label_max="More"
- value_default="10"
+ value_default=".1"
value_min="0"
- value_max="10"
+ value_max=".1"
camera_elevation=".3"
camera_distance=".8">
<param_driver />
@@ -9306,7 +9306,7 @@ render_pass="bump">
label_min="Less"
label_max="More"
value_default="10"
- value_min="0"
+ value_min="1"
value_max="100"
camera_elevation=".3"
camera_distance=".8">
@@ -9359,9 +9359,9 @@ render_pass="bump">
edit_group="physics"
label_min="Less"
label_max="More"
- value_default="10"
+ value_default=".1"
value_min="0"
- value_max="10"
+ value_max=".1"
camera_elevation=".3"
camera_distance=".8">
<param_driver />
diff --git a/indra/newview/llphysicsmotion.cpp b/indra/newview/llphysicsmotion.cpp
index eb128e043c..c9a75784e1 100644
--- a/indra/newview/llphysicsmotion.cpp
+++ b/indra/newview/llphysicsmotion.cpp
@@ -309,7 +309,7 @@ LLMotion::LLMotionInitStatus LLPhysicsMotionController::onInitialize(LLCharacter
"",
"mChest",
character,
- LLVector3(0,0,1),
+ LLVector3(0,0,-1),
controllers_belly_bounce);
if (!belly_bounce_motion->initialize())
return STATUS_FAILURE;
@@ -337,7 +337,7 @@ F32 LLPhysicsMotion::toLocal(const LLVector3 &world)
LLVector3 dir_world = mMotionDirectionVec * rotation_world;
dir_world.normalize();
- return world * dir_world * mMotionDirectionVec.length(); // dot product
+ return world * dir_world;
}
F32 LLPhysicsMotion::calculateVelocity_local(const F32 time_delta)
@@ -625,7 +625,7 @@ BOOL LLPhysicsMotion::onUpdate(F32 time)
}
*/
- return TRUE;
+ return update_visuals;
}
// Range of new_value_local is assumed to be [0 , 1] normalized.
diff --git a/indra/newview/llpolymesh.cpp b/indra/newview/llpolymesh.cpp
index 08813e6a98..4118401a4c 100644
--- a/indra/newview/llpolymesh.cpp
+++ b/indra/newview/llpolymesh.cpp
@@ -605,54 +605,62 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
if (!strcmp(morphName, "Big_Belly_Torso"))
{
- LLPolyMorphData* belly_data = new LLPolyMorphData(*morph_data);
- belly_data->mName = std::string("Big_Belly_Torso_Gravity");
- for (U32 v=0; v < belly_data->mNumIndices; v++)
+ LLPolyMorphData* cloned_morph_data = new LLPolyMorphData(*morph_data);
+ cloned_morph_data->mName = std::string("Big_Belly_Torso_Gravity");
+ for (U32 v=0; v < morph_data->mNumIndices; v++)
{
- belly_data->mCoords[v][0] = 0;
- belly_data->mCoords[v][1] = 0;
- belly_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mCoords[v][0] = 0;
+ cloned_morph_data->mCoords[v][1] = 0;
+ cloned_morph_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mNormals[v] = LLVector3(0,0,0);
+ cloned_morph_data->mBinormals[v] = LLVector3(0,0,0);
}
- mMorphData.insert(belly_data);
+ mMorphData.insert(cloned_morph_data);
}
if (!strcmp(morphName, "Big_Belly_Legs"))
{
- LLPolyMorphData* belly_data = new LLPolyMorphData(*morph_data);
- belly_data->mName = std::string("Big_Belly_Legs_Gravity");
- for (U32 v=0; v < belly_data->mNumIndices; v++)
+ LLPolyMorphData* cloned_morph_data = new LLPolyMorphData(*morph_data);
+ cloned_morph_data->mName = std::string("Big_Belly_Legs_Gravity");
+ for (U32 v=0; v < cloned_morph_data->mNumIndices; v++)
{
- belly_data->mCoords[v][0] = 0;
- belly_data->mCoords[v][1] = 0;
- belly_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mCoords[v][0] = 0;
+ cloned_morph_data->mCoords[v][1] = 0;
+ cloned_morph_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mNormals[v] = LLVector3(0,0,0);
+ cloned_morph_data->mBinormals[v] = LLVector3(0,0,0);
}
- mMorphData.insert(belly_data);
+ mMorphData.insert(cloned_morph_data);
}
if (!strcmp(morphName, "skirt_belly"))
{
- LLPolyMorphData* belly_data = new LLPolyMorphData(*morph_data);
- belly_data->mName = std::string("skirt_belly_gravity");
- for (U32 v=0; v < belly_data->mNumIndices; v++)
+ LLPolyMorphData* cloned_morph_data = new LLPolyMorphData(*morph_data);
+ cloned_morph_data->mName = std::string("skirt_belly_gravity");
+ for (U32 v=0; v < cloned_morph_data->mNumIndices; v++)
{
- belly_data->mCoords[v][0] = 0;
- belly_data->mCoords[v][1] = 0;
- belly_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mCoords[v][0] = 0;
+ cloned_morph_data->mCoords[v][1] = 0;
+ cloned_morph_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mNormals[v] = LLVector3(0,0,0);
+ cloned_morph_data->mBinormals[v] = LLVector3(0,0,0);
}
- mMorphData.insert(belly_data);
+ mMorphData.insert(cloned_morph_data);
}
if (!strcmp(morphName, "Small_Butt"))
{
- LLPolyMorphData* butt_data = new LLPolyMorphData(*morph_data);
- butt_data->mName = std::string("Butt_Gravity");
- for (U32 v=0; v < butt_data->mNumIndices; v++)
+ LLPolyMorphData* cloned_morph_data = new LLPolyMorphData(*morph_data);
+ cloned_morph_data->mName = std::string("Butt_Gravity");
+ for (U32 v=0; v < cloned_morph_data->mNumIndices; v++)
{
- butt_data->mCoords[v][0] = 0;
- butt_data->mCoords[v][1] = 0;
- butt_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mCoords[v][0] = 0;
+ cloned_morph_data->mCoords[v][1] = 0;
+ cloned_morph_data->mCoords[v][2] = 0.01F;
+ cloned_morph_data->mNormals[v] = LLVector3(0,0,0);
+ cloned_morph_data->mBinormals[v] = LLVector3(0,0,0);
}
- mMorphData.insert(butt_data);
+ mMorphData.insert(cloned_morph_data);
}
}