查看: 1926|回复: 3

模型在开启光照后后有黑点

[复制链接]

该用户从未签到

发表于 2015-6-4 10:16:56 | 显示全部楼层 |阅读模式
本帖最后由 rubby 于 2015-6-4 10:19 编辑

各位大哥:

介绍:
附图1,2分别是"无光照"和"有光照"情况下,创建的井筒。
井筒不同部位井径是不一样的,我是利用四边形拼接形成的井筒。
法线是自动生成的 smv.smooth(geom)。

问题:
1.在有光照的情况下,感觉有很多黑点。如何剔除
2.不够光滑。如何让其光滑

其他软件的效果如附图3.
我自己做的放大后效果见附图4.

希望我把问题描述清楚了,哪位大牛帮忙给提示一下,多谢。

个人感觉原因: 由于井径不一样造成的。凹进去,没有光照。也可能是上下半径不一致,连接处容易出现黑点
1. 法线已经设置,不是法线问题
2.难道是光源的问题,使用的是osg默认的光源,未添加新光源。
3.难道是材质的原因,感觉也不像。


多谢大家

无光照

无光照
有光照.png

其它软件

其它软件

放大

放大

该用户从未签到

 楼主| 发表于 2015-6-26 09:32:42 | 显示全部楼层
哪位大哥帮忙分析下,小弟研究好久也没有找到解决方案。
我的思考如下
1. 光滑不光滑,应该是法线设置的问题,现在是通过smv.smooth(*geom)自动计算的,估计需要自己计算

2,有黑点原因: 缩小模型时候特别明显。感觉是因为缩小后,像素叠加导致的。
难道是需要使用抗锯齿 多重采样 解决??

小弟跪求好人回答。。。

该用户从未签到

 楼主| 发表于 2015-6-26 10:13:18 | 显示全部楼层
解决方法:贴出来,共大家参考。
设置多重采样。
  1. osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits;
  2. traits->samples = 4. //最大为16 与显卡有关。

  3. osg::DisplaySettings::instance()->setNumltiSamples(4); //这种方法无效
复制代码

该用户从未签到

发表于 2016-5-10 22:47:30 | 显示全部楼层
楼主这个解决了吗?同求
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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