查看: 1421|回复: 5

osg文件读取

[复制链接]

该用户从未签到

发表于 2014-6-9 15:38:20 | 显示全部楼层 |阅读模式
我想查看下osg中是怎么读入.osg和.osgt文件的~~~~
单步调试发现需要调用dll~~~~
有那位老兄知道具体的怎么读取.osg和.osgt文件吗?~~~
比如我只想读取osg文件中的某个Geode或Group~~

该用户从未签到

发表于 2014-6-9 22:19:11 | 显示全部楼层
1. 直接用osgDB::readNodeFile()就行,程序会根据文件扩展名自动调用对应的插件。
2. 读取的Node可以用Node->asGroup转化为Group对象,你需要确定下文件中树的深度,以及要识别的节点在那一级,然后循环便利就行了,一般用名称作为节点的标识,getName方法就可以获得。

该用户从未签到

发表于 2014-6-9 22:29:53 | 显示全部楼层
自己用文本编辑器直接打开*.osg 就可查看数据存储信息

该用户从未签到

 楼主| 发表于 2014-6-10 07:49:00 | 显示全部楼层
谢谢楼上两位的回答····~~
我还想知道,不借助osg自带的插件,因为读入文件最后要调用dll~~~
如果不调用dll该如何读入.osg数据呢····?有没有相关的源码或者案例?

该用户从未签到

发表于 2014-6-10 11:43:54 | 显示全部楼层
tiandao011 发表于 2014-6-10 07:49
谢谢楼上两位的回答····~~
我还想知道,不借助osg自带的插件,因为读入文件最后要调用dll~~~
如果不 ...

ReaderWriterosg.cpp你编译osg的时候,编译出的osgdb_osg.dll,这个dll中写的就是读取.osg文件格式的方法,源码就是前面说些的文件,你可以看一下,osg所支持的所有的数据解析都有源码。

该用户从未签到

 楼主| 发表于 2014-6-10 17:33:53 | 显示全部楼层
ysw 发表于 2014-6-10 11:43
ReaderWriterosg.cpp你编译osg的时候,编译出的osgdb_osg.dll,这个dll中写的就是读取.osg文件格式的方法 ...

谢谢·····
不过这个ReaderWriterOSG~~好像是最终到了Field.cpp和FieldReader.cpp·······
感觉读起来比较困难········
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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