游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2297|回复: 1

_notifySkeleton()骨骼动画共享 疑问(急)

[复制链接]

1

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2009-8-28 10:13:00 | 显示全部楼层 |阅读模式
偶也有这样的疑问

偶是这样想的 一个模型分成N个部分
比如 头部,身体 胳膊 腿

头部是主体模型 其他部分是可以换的模型
3D美工做出来的都是单独的.mesh 都带有.skeleton动画文件,但是只有头部(主体模型)才真正的带有动画

在绑定的时候分开导入,比如
        //创建主模型节点
        SceneNode* mainFrameNode = mSceneMgr->getRootSceneNode()->createChildSceneNode("MainFrame");
        //创建主模型实体
        Entity* mainFrameEntity = mSceneMgr->createEntity("MainFrame","Object10.mesh");

        mainFrameNode->attachObject(mainFrameEntity);

        Entity* chiledEntity = mSceneMgr->createEntity("chiledFrame","Object03.mesh");
        Entity* chiledEntity2 = mSceneMgr->createEntity("chiledFrame2","Object07.mesh");

        //获得主题模型的骨骼
        SkeletonPtr skptr = mainframeEntity->getMesh()->getSkeleton();
        ////将挂接模型的骨骼设置成主题模型的
        chiledEntity->getMesh()->_notifySkeleton(skptr);
        chiledEntity2->getMesh()->_notifySkeleton(skptr);

        //这个就是挂接代码
        chiledEntity->shareSkeletonInstanceWith(mainframeEntity);
        chiledEntity2->shareSkeletonInstanceWith(mainframeEntity);
        //将这个物体绑定到主题模型挂接的节点上
        mainframeNode->attachObject(chiledEntity);
        mainframeNode->attachObject(chiledEntity2);

这样使用_notifySkeleton()共享骨骼,但是这样是不正确的!
貌似需要考虑手动设置骨骼权重!
希望高手指点下。不胜感激!

我绑定后的效果图片在附件里面

1

主题

9

帖子

9

积分

新手上路

Rank: 1

积分
9
 楼主| 发表于 2009-8-31 13:14:00 | 显示全部楼层

Re:_notifySkeleton()骨骼动画共享 疑问(急)

发现问题了

是因为头部的骨骼没有导出完整

现在急求Maya 导出插件能不能设置成不优化骨骼,吧没有蒙皮的骨骼也导出
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-21 00:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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