查看: 2058|回复: 4

用osgdb导入的obj模型,如何用四边形线框模式画出?

[复制链接]

该用户从未签到

发表于 2011-4-29 09:45:49 | 显示全部楼层 |阅读模式
我的obj模型都是四边形面片,现在用osgdb::readnodefile载入后,想用线框模式显示,结果发现画出来的是三角网格,怎样才能以四边形网格显示呢??下面是线框模式的代码,其中ws.quad_mesh就是载入obj模型后的osg::Node
  1. osg::StateSet* stateset = ws.quad_mesh.get()->getOrCreateStateSet();
  2.           osg::ref_ptr<osg::PolygonMode> polygonMode = new osg::PolygonMode();
  3.           polygonMode->setMode( osg::PolygonMode::FRONT_AND_BACK, osg::PolygonMode::LINE);
  4.           stateset->setAttribute( polygonMode.get(), osg::StateAttribute::OVERRIDE | osg::StateAttribute::ON );
复制代码

该用户从未签到

 楼主| 发表于 2011-4-29 10:30:17 | 显示全部楼层
或者在osgdb::readnodefile的时候 需要制定是四边形 还是三角形??

该用户从未签到

发表于 2011-4-29 13:47:04 | 显示全部楼层
没有这样的设置,这和插件本身的工作方式有关,您只能在读入后自己去修改

该用户从未签到

 楼主| 发表于 2011-4-29 22:01:57 | 显示全部楼层
回复 3# array


    我该怎么改呢,是不是从node取出geode,然后取出drawable,然后geometry,再在geometry中设置primitiveset??

该用户从未签到

发表于 2011-5-2 14:31:13 | 显示全部楼层
obj貌似保存的就是三角形面片,你用别的文件格式输出场景,然后线框显示
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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