diff options
Diffstat (limited to 'indra/llcharacter')
-rw-r--r-- | indra/llcharacter/llkeyframemotion.cpp | 17 | ||||
-rw-r--r-- | indra/llcharacter/llkeyframemotion.h | 6 | ||||
-rw-r--r-- | indra/llcharacter/llkeyframewalkmotion.cpp | 14 | ||||
-rw-r--r-- | indra/llcharacter/llmotioncontroller.cpp | 25 | ||||
-rw-r--r-- | indra/llcharacter/llmotioncontroller.h | 2 | ||||
-rw-r--r-- | indra/llcharacter/llpose.cpp | 2 |
6 files changed, 49 insertions, 17 deletions
diff --git a/indra/llcharacter/llkeyframemotion.cpp b/indra/llcharacter/llkeyframemotion.cpp index 91d96904ba..ce59349d55 100644 --- a/indra/llcharacter/llkeyframemotion.cpp +++ b/indra/llcharacter/llkeyframemotion.cpp @@ -71,6 +71,15 @@ static F32 MAX_CONSTRAINTS = 10; // JointMotionList //----------------------------------------------------------------------------- LLKeyframeMotion::JointMotionList::JointMotionList() + : mDuration(0.f), + mLoop(FALSE), + mLoopInPoint(0.f), + mLoopOutPoint(0.f), + mEaseInDuration(0.f), + mEaseOutDuration(0.f), + mBasePriority(LLJoint::LOW_PRIORITY), + mHandPose(LLHandMotion::HAND_POSE_SPREAD), + mMaxPriority(LLJoint::LOW_PRIORITY) { } @@ -2116,11 +2125,19 @@ void LLKeyframeDataCache::clear() //----------------------------------------------------------------------------- LLKeyframeMotion::JointConstraint::JointConstraint(JointConstraintSharedData* shared_data) : mSharedData(shared_data) { + mWeight = 0.f; mTotalLength = 0.f; mActive = FALSE; mSourceVolume = NULL; mTargetVolume = NULL; mFixupDistanceRMS = 0.f; + + int i; + for (i=0; i<MAX_CHAIN_LENGTH; ++i) + { + mJointLengths[i] = 0.f; + mJointLengthFractions[i] = 0.f; + } } //----------------------------------------------------------------------------- diff --git a/indra/llcharacter/llkeyframemotion.h b/indra/llcharacter/llkeyframemotion.h index c383e5e99e..a50447c3bf 100644 --- a/indra/llcharacter/llkeyframemotion.h +++ b/indra/llcharacter/llkeyframemotion.h @@ -224,7 +224,11 @@ protected: mEaseOutStopTime(0.f), mUseTargetOffset(FALSE), mConstraintType(TYPE_POINT), - mConstraintTargetType(TYPE_BODY) {}; + mConstraintTargetType(TYPE_BODY), + mSourceConstraintVolume(0), + mTargetConstraintVolume(0), + mJointStateIndices(NULL) + { }; ~JointConstraintSharedData() { delete [] mJointStateIndices; } S32 mSourceConstraintVolume; diff --git a/indra/llcharacter/llkeyframewalkmotion.cpp b/indra/llcharacter/llkeyframewalkmotion.cpp index 0d7e34bb4f..471acd8ac3 100644 --- a/indra/llcharacter/llkeyframewalkmotion.cpp +++ b/indra/llcharacter/llkeyframewalkmotion.cpp @@ -139,9 +139,16 @@ BOOL LLKeyframeWalkMotion::onUpdate(F32 time, U8* joint_mask) // LLWalkAdjustMotion() // Class Constructor //----------------------------------------------------------------------------- -LLWalkAdjustMotion::LLWalkAdjustMotion(const LLUUID &id) : LLMotion(id) +LLWalkAdjustMotion::LLWalkAdjustMotion(const LLUUID &id) : + LLMotion(id), + mLastTime(0.f), + mAvgCorrection(0.f), + mSpeedAdjust(0.f), + mAnimSpeed(0.f), + mAvgSpeed(0.f), + mRelativeDir(0.f), + mAnkleOffset(0.f) { - mLastTime = 0.f; mName = "walk_adjust"; mPelvisState = new LLJointState; @@ -349,7 +356,8 @@ void LLWalkAdjustMotion::onDeactivate() // LLFlyAdjustMotion::LLFlyAdjustMotion() //----------------------------------------------------------------------------- LLFlyAdjustMotion::LLFlyAdjustMotion(const LLUUID &id) - : LLMotion(id) + : LLMotion(id), + mRoll(0.f) { mName = "fly_adjust"; diff --git a/indra/llcharacter/llmotioncontroller.cpp b/indra/llcharacter/llmotioncontroller.cpp index fff19dbefe..5bcae5e635 100644 --- a/indra/llcharacter/llmotioncontroller.cpp +++ b/indra/llcharacter/llmotioncontroller.cpp @@ -155,18 +155,19 @@ LLMotion *LLMotionRegistry::createMotion( const LLUUID &id ) // LLMotionController() // Class Constructor //----------------------------------------------------------------------------- -LLMotionController::LLMotionController( ) -{ - mTime = 0.f; - mTimeOffset = 0.f; - mLastTime = 0.0f; - mHasRunOnce = FALSE; - mPaused = FALSE; - mPauseTime = 0.f; - mTimeStep = 0.f; - mTimeStepCount = 0; - mLastInterp = 0.f; - mTimeFactor = 1.f; +LLMotionController::LLMotionController() + : mTimeFactor(1.f), + mCharacter(NULL), + mTime(0.f), + mTimeOffset(0.f), + mLastTime(0.0f), + mHasRunOnce(FALSE), + mPaused(FALSE), + mPauseTime(0.f), + mTimeStep(0.f), + mTimeStepCount(0), + mLastInterp(0.f) +{ } diff --git a/indra/llcharacter/llmotioncontroller.h b/indra/llcharacter/llmotioncontroller.h index effea0940a..c6749c5c36 100644 --- a/indra/llcharacter/llmotioncontroller.h +++ b/indra/llcharacter/llmotioncontroller.h @@ -227,10 +227,10 @@ protected: F32 mLastTime; BOOL mHasRunOnce; BOOL mPaused; + F32 mPauseTime; F32 mTimeStep; S32 mTimeStepCount; F32 mLastInterp; - F32 mPauseTime; U8 mJointSignature[2][LL_CHARACTER_MAX_JOINTS]; }; diff --git a/indra/llcharacter/llpose.cpp b/indra/llcharacter/llpose.cpp index 2120cb223e..c57fbfdc5d 100644 --- a/indra/llcharacter/llpose.cpp +++ b/indra/llcharacter/llpose.cpp @@ -188,6 +188,7 @@ LLJointStateBlender::LLJointStateBlender() { mJointStates[i] = NULL; mPriorities[i] = S32_MIN; + mAdditiveBlends[i] = FALSE; } } @@ -458,6 +459,7 @@ void LLJointStateBlender::resetCachedJoint() //----------------------------------------------------------------------------- LLPoseBlender::LLPoseBlender() + : mNextPoseSlot(0) { } |