Setting of Animation Data by SL Viewer
- llcharacter/llkeyframemotion.cpp
- BOOL LLKeyframeMotion::onUpdate(F32 time, U8* joint_mask)
- void LLKeyframeMotion::applyKeyframes(F32 time)
- void LLKeyframeMotion::JointMotion::update(LLJointState* joint_state, F32 time, F32 duration)
Hippo
- llcharacter/llmotion.cpp
- llcharacter/llchractor.cpp
- llcharacter/llmotioncontroller.cpp
- flushAllMotions -> startMotion -> activateMotionInstance
- llcharacter/llkeyframemotion.cpp
- LLMotion::LLMotionInitStatus LLKeyframeMotion::onInitialize(LLCharacter *character)
llerrs << "Must call LLKeyframeMotion::setVFS() first before loading a keyframe file!" << llendl;
- llcharacter/lleditingmotion.cpp
- llcharacter/llkeyframemotionparam.cpp
Imprudence
motion は LLKeyframeMotionのsuper class
LLKeyframeMotion::onInitialize if mAssetStatus==ASSET_UNDEFINED LLKeyframeMotion::JointMotionList* joint_motion_list = LLKeyframeDataCache::getKeyframeData(getID()); if joint_motion_list != null mJointMotionList = joint_motion_list; mAssetStatus = ASSET_LOADED; return Read Data or recieve UDP deserialize(dp) mJointMotionList を生成 mJointMotionList にデータをセット LLKeyframeDataCache::addKeyframeData(getID(), mJointMotionList); キャッシュ getID(): mID (アッセットのUUID) mAssetStatus = ASSET_LOADED;
llcharacter.cpp LLMotionController::createMotion() motion->onInitialize
llcharacter.cpp LLMotionController::updateLoadingMotions motion->onInitialize LLMotionController::activateMotionInstance motion->activate LLkeyFrameMotion::onActive motion->onUpdate
llcharacter.cpp LLMotionController::startMotion() if motion==null LLMotionController::createMotion() motion->onInitialize LLMotionController::activateMotionInstance motion->activate LLkeyFrameMotion::onActive motion->onUpdate
LLKeyframeDataCache::removeKeyframeData(getID()); mAssetStatus = ASSET_UNDEFINED;
以下没
キャッシュさせない
motion->onUpdate でデータをクリアすれば,onInitializeで毎回データを読みに行く <- Kinectのデータをぶち込む
Counter: 1286,
today: 1,
yesterday: 1
最終更新: 2011-11-03 (木) 14:27:43 (JST) (4552d) by iseki