本文整理汇总了C++中LLKeyframeMotion::setHandPose方法的典型用法代码示例。如果您正苦于以下问题:C++ LLKeyframeMotion::setHandPose方法的具体用法?C++ LLKeyframeMotion::setHandPose怎么用?C++ LLKeyframeMotion::setHandPose使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LLKeyframeMotion
的用法示例。
在下文中一共展示了LLKeyframeMotion::setHandPose方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: resetMotion
//-----------------------------------------------------------------------------
// resetMotion()
//-----------------------------------------------------------------------------
void LLFloaterAnimPreview::resetMotion()
{
LLVOAvatar* avatarp;
if (mInWorld)
{
avatarp = gAgent.getAvatarObject();
}
else
{
avatarp = mAnimPreview->getDummyAvatar();
}
if (!avatarp)
{
return;
}
BOOL paused = avatarp->areAnimationsPaused();
// *TODO: Fix awful casting hack
LLKeyframeMotion* motionp = (LLKeyframeMotion*)avatarp->findMotion(mMotionID);
// Set emotion
std::string emote = childGetValue("emote_combo").asString();
motionp->setEmote(mIDList[emote]);
LLUUID base_id = mIDList[childGetValue("preview_base_anim").asString()];
avatarp->deactivateAllMotions();
avatarp->startMotion(base_id, BASE_ANIM_TIME_OFFSET);
avatarp->startMotion(mMotionID, 0.0f);
childSetValue("playback_slider", 0.0f);
// Set pose
std::string handpose = childGetValue("hand_pose_combo").asString();
avatarp->startMotion( ANIM_AGENT_HAND_MOTION, 0.0f );
motionp->setHandPose(LLHandMotion::getHandPose(handpose));
if (paused)
{
mPauseRequest = avatarp->requestPause();
}
else
{
mPauseRequest = NULL;
}
}