您的位置:首页 > 其它

14、osg中通过一个模型,将其中一个模型隐藏掉输出成另一个模型(osg文件)

2015-12-16 22:13 483 查看
如下代码:

#include "stdafx.h"
#include <osgDB/Registry>
#include <osgDB/ReadFile>
#include <osgDB/ReaderWriter>
#include <osgDB/WriteFile>
#include <osg/Node>
#include <osgViewer/Viewer>
int _tmain(int argc, _TCHAR* argv[])
{
osgViewer::Viewer viewer ;
//读取模型
osg::Node* node = osgDB::readNodeFile("fountain.osgt") ;
//隐藏结点
node ->asGroup() ->getChild(0) ->setNodeMask(0) ;
viewer.setSceneData(node) ;
//输出结点到free.osg中
osgDB::writeNodeFile(*(viewer.getSceneData()), "free.osg", osgDB::Registry::instance() ->getOptions());
viewer.realize();
viewer.run();
return 0;
}
运行结果如下:



然后就会在代码处输出一个free.osg文件,如下图所示,当使用free.osg时,只会显示和上图中一样的效果,而不必去隐藏什么。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: