查看: 1922|回复: 7

osg文件中的数据读取

[复制链接]

该用户从未签到

发表于 2011-10-25 19:57:38 | 显示全部楼层 |阅读模式
我想问下,如何将.osg文件中的信息(顶点坐标,纹理,法线等)读取出来。我想自己写个数据结构来存储,并将这些信息存储到数据库中。
给个思路或者例子参考下吧。谢谢了,谢谢。

该用户从未签到

发表于 2011-10-25 21:32:22 | 显示全部楼层
回复 1# yugang2010


    请教楼主,我将一个节点结构树保存为*.osg文件后,在另外一个场景中osgDB::ReadNodeFile(“*.osg”)后,还能找到以前那个节点数中的各个节点吗?谢谢!

该用户从未签到

 楼主| 发表于 2011-10-25 23:28:24 | 显示全部楼层
回复 2# knightlixiao


    其实这样就等于把几个场景结合到一个节点node中了。就像建模时把几个场景在建模软件中放在一起一样,只能当做一个场景对其进行操作了。

该用户从未签到

发表于 2011-10-26 08:51:57 | 显示全部楼层
1 取出数据
  这个思路是这样的,例如我们读取了 一个模型 Node, 然后遍历它的子节点,直到取到 osgDrawable *,然后取出顶点数组、法线数组等。参考例子:
据我所知 obj文件的格式是比较简单的,参考如下:http://www.cppblog.com/lovedday/archive/2008/06/13/53153.html
你可以参考osgDB::的写出文件功能,参考写出obj和osg格式的源代码。

2 存储到数据库
可以用二进制方式存储,然后读入内存,在恢复过来。

该用户从未签到

 楼主| 发表于 2011-10-27 11:47:16 | 显示全部楼层
请教几位,如何再将顶点等数据信息输出到.osg文件。谢谢

该用户从未签到

发表于 2011-10-27 15:02:15 | 显示全部楼层
回复 5# yugang2010


   不太明白什么意思,osgDB::Write()就可以写出呀。

该用户从未签到

 楼主| 发表于 2011-10-27 15:35:51 | 显示全部楼层
回复 6# CWorld


    恩 谢谢

该用户从未签到

发表于 2011-10-28 12:10:26 | 显示全部楼层
把osg文件读取出来,其所对应的node包含了一切信息。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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