游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2650|回复: 4

奇怪的问题.

[复制链接]

10

主题

25

帖子

27

积分

注册会员

Rank: 2

积分
27
发表于 2007-6-19 00:18:00 | 显示全部楼层 |阅读模式
添加如下一段后:

SkeletonPtr skel = SkeletonManager::getSingleton().load("jaiqua.skeleton"...........略
Animation* anim = skel->getAnimation("Run");
Animation::NodeTrackIterator trackIter = anim->getNodeTrackIterator();
while (trackIter.hasMoreElements())
        {
                NodeAnimationTrack* track = trackIter.getNext();
                TransformKeyFrame *firstKF=track->getNodeKeyFrame(0);
        LogManager::getSingletonPtr()->logMessage(skel->getBone(track->getHandle())->getName());
                    for (int i=0;i<=track->getNumKeyFrames()-1;i++)
                {
                     Vector3 tr=track->getNodeKeyFrame(i)->getTranslate();
                    if (skel->getBone(track->getHandle())->getName()=="Spineroot")
                                 {
                                 tr.z=0;
                                 track->getNodeKeyFrame(i)->setTranslate(tr);
                                 }
                LogManager::getSingletonPtr()->logMessage(StringConverter::toString(tr));
                }
}


在release下,有时候运行提示调试,有时候不提醒.
在debug下都能正常运行.

想问下什么原因可能导致这种情况?

0

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2007-6-19 10:44:00 | 显示全部楼层

Re:奇怪的问题.

假如你用VC++2005要打补丁

10

主题

25

帖子

27

积分

注册会员

Rank: 2

积分
27
 楼主| 发表于 2007-6-19 12:48:00 | 显示全部楼层

Re:奇怪的问题.

我找到原因了.
是StringConverter::toString(tr))的问题,转换整形或者实型到字符串是很稳定的,但转换Vector3类型的时候就很不稳定了.但debug下没问题,还是比较疑惑.

10

主题

219

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
发表于 2007-6-19 22:11:00 | 显示全部楼层

Re:奇怪的问题.

debug模式有时会赋予初值

3

主题

15

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2011-5-15 14:42:00 | 显示全部楼层

Re:奇怪的问题.

2007年的帖子,看Ogre Demo_SkeletalAnimation 路过
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-8 06:07

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表