查看: 2073|回复: 2

有人加载过Terrian3d地形和骨骼动画嘛?

[复制链接]

该用户从未签到

发表于 2011-12-19 21:22:07 | 显示全部楼层 |阅读模式
OSG里加载Terrian3d的ive地形(从网上下载的)能够正常显示地形,但是如果同时在OSG里加载一个osgCal的cal3d骨骼模型,Terrian3d的ive地形就不见了.

//加载Terrian 3d地形
        osg::ref_ptr<osg::Node> goe = osgDB::readNodeFile("D:/OSG/OpenSceneGraph/data/model/geotypic_ive_dds/master.ive");
        osg::ref_ptr<osg:ositionAttitudeTransform> pXForm = new osg::PositionAttitudeTransform();
        pXForm->setPosition(osg::Vec3d(0.0,0.0,0.0));
                pXForm->addChild(goe.get());
                m_pRoot->addChild( pXForm.get() );


//加载cal3d骨骼
        char* s = getenv("OSG_FILE_PATH");
        std::string fn =  "D:/OSG/OpenSceneGraph/data/skeleton/paladin/paladin.cfg";
        if( pActor->InitSelfActor( fn ) )
               {
                osg::ref_ptr<osg::PositionAttitudeTransform> actorNode = pActor->CurActorNode();
                if( actorNode.valid() )
                {
                        m_pRoot->addChild( actorNode.get() );
                }
               }

        osgUtil::Optimizer optimzer;
        optimzer.optimize(m_pRoot.get());
        setSceneData(m_pRoot.get());
       

该用户从未签到

发表于 2011-12-20 10:08:14 | 显示全部楼层
我想这是因为您的两个模型相距很远或者大小差别很大所致的,模型被加载了但是您找不到它而已

该用户从未签到

 楼主| 发表于 2012-5-4 10:04:10 | 显示全部楼层
谢谢。后来改用VPB做的地形就好了,没发现原因。不过array说的大小差别很大这个原因被我证实了,我在一个尺寸没有按照实际大小绘制的室内场景中也看不到角色模型,将场景尺寸变小就能看到。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表