查看: 2600|回复: 7

osg读取obj的问题,请教指点

[复制链接]

该用户从未签到

发表于 2011-7-19 22:27:19 | 显示全部楼层 |阅读模式
本帖最后由 menglixiaoyi 于 2011-7-20 00:06 编辑

osg读取obj,据array老师的说法,就是读进去以后,obj格式的中的mtl名已经不能获取到了,那么我怎么区分一个模型中不同部分,是不是通过组来区分,就是obj文件中以g开头的行的信息来区分;也就是说是不是,比如我给一个obj中的一个对象附以glass的mtl名字,当我readnodefile时候,实际上这个glass的材质名已经无法获取或者说追踪了??

另一个,我怎么区分obj中的不同部分,obj建模时候有什么要求?比如是不同实体部分由名字或者其他可区分的标记?请大家给予指点,非常感谢!
最好是通过材质名就是mtl中对应的newmtl关键字后面的名称来判断一个组节点下的不同子节点是同一个渲染状态,因为我的目的就是想通过渲染状态判断是否是同一类型的实体,比如汽车上的金属一组,玻璃一组,希望array能帮助回答谢谢!

该用户从未签到

 楼主| 发表于 2011-7-19 22:52:43 | 显示全部楼层
我自己顶一下,希望大家给点帮助!

该用户从未签到

 楼主| 发表于 2011-7-20 00:02:12 | 显示全部楼层
请教array版指点下谢谢

该用户从未签到

发表于 2011-7-20 08:28:20 | 显示全部楼层
没有什么可以指点的,不要把内存中的数据结构和文件中的数据结构混为一谈。您可以通过NodeVisitor来获取场景结构,然后可以用getAttribute等方法来得到某个节点上的渲染属性;您可以尝试用getName()来获取某个渲染属性的名称,它可能与mtl中的名称对应

该用户从未签到

 楼主| 发表于 2011-7-20 09:12:15 | 显示全部楼层
本帖最后由 menglixiaoyi 于 2011-7-20 09:14 编辑

回复 4# array

哦,getname是节点的渲染属性的的成员函数吗?可能是用ogre里脚本用的多,总是觉得应该有函数可以获取osg中mtl脚本的名字,当然也不知道它是不是脚本。。

该用户从未签到

发表于 2011-7-20 12:38:08 | 显示全部楼层
getName()是所有osg场景类的通用方法

该用户从未签到

发表于 2016-1-16 17:21:58 | 显示全部楼层
想请问一下,OSG能不能读取一个复杂场景的obj文件,然后给obj描述的这个场景里面的各个模型进行KD-Tree划分呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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