查看: 1172|回复: 8

求教!如何用shader实现这样的效果?

[复制链接]

该用户从未签到

发表于 2011-8-18 16:27:20 | 显示全部楼层 |阅读模式
求教!我有一个圆盘上面贴有贴图,如何用着色器实现判断是某一特定颜色就不渲染(discard)?请具体点,glsl不太懂。
谢谢!

该用户从未签到

发表于 2011-8-19 08:52:09 | 显示全部楼层
  1. if (all(equal(color, color2))) discard;
复制代码

该用户从未签到

 楼主| 发表于 2011-8-19 09:38:28 | 显示全部楼层
回复 2# array
谢谢array,你的意思是根据color与color2相同来判断,我说的是模型贴图的颜色,这个color该如何获得呢?最后还要写gl_FragColor=...这句话么?请解答,glsl一点不懂。谢谢!

该用户从未签到

发表于 2011-8-19 11:41:36 | 显示全部楼层
片元着色器里这句话必不可少~~

该用户从未签到

 楼主| 发表于 2011-8-19 12:31:08 | 显示全部楼层
贴图的颜色,这个color该如何获得呢?

该用户从未签到

发表于 2011-8-19 14:04:43 | 显示全部楼层
纹理的颜色有专门的glsl函数获取

该用户从未签到

 楼主| 发表于 2011-8-19 14:17:51 | 显示全部楼层
回复 6# liuzhiyu123


    请具体点哪一个函数?怎么用?

该用户从未签到

 楼主| 发表于 2011-8-20 10:14:50 | 显示全部楼层
回复 2# array


    array麻烦帮我解答一下,谢谢啊!

该用户从未签到

发表于 2011-8-22 08:38:51 | 显示全部楼层
贴图纹素值当然是通过texture2D来得到,如果您连这个都不理解。那么就不要着急实现自己的功能,而是先好好了解什么是shading language吧。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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