我要发帖 回复

中级会员

20

主题

155

积分

0

专家分

:

私信
发表时间 : 2008-7-23 19:49:29 | 浏览 : 1342    评论 : 5
DOF里能不能做出360度连续转的效果,并且不是响应按键而是让其自动转动,比如车轮啊,请高手指点!

最近VR访客

obuil 评论于2008-7-23 21:07:51
可以的, 取得dof的位姿  然后 P++  在每一帧中 然后再赋值回去给这个dof节点 就可以了
xiangbalao 评论于2008-7-23 22:30:38
老大能否再说清楚些,跟dof的位姿有什么关系
p++在每一帧中是什么意思,谢谢!
xiangbalao 评论于2008-7-24 10:31:09
已经搞定了,谢谢老大!
以恒定速度转动为例实现如下:
对 virtual void run();重载
void myApp::run()
{
    uint frameNum;
    // rendering loop
    while ( (frameNum = vpKernel::instance()->beginFrame()) > 0 ) {
        if (mainflwheel!=NULL&&mainfrwheel!=NULL
                                &&mainblwheel!=NULL&&mainbrwheel!=NULL)       
                        {
                        mainflwheel->setRotateP(-10,true);//前左轮转动
                        mainfrwheel->setRotateP(-10,true);//前右轮转动
                        mainblwheel->setRotateP(-10,true);//后左轮转动
                        mainbrwheel->setRotateP(-10,true);//后又轮转动
                        }
        vpKernel::instance()->endFrame();
        
    }
    unconfigure();
}
需要根据运动速度来设置车轮的转动速度,添加一个静态变量就可以了!
独山子 评论于2008-7-24 20:23:25
可以考虑将if语句移到循环之前。
逆水行舟,不进则退。
ddcjd 评论于2008-7-25 09:32:46
最好是用Subscriber实现,这样直接加在循环里不好

手机版|VR开发网 统计 津ICP备18009691号
网安备12019202000257

GMT+8, 2021-6-24 01:49 AM

返回顶部