着色器问题(Cg语言)

lxdfigo 2010-04-26 10:01:26
vertex shader 输出参数,是不是做为 fragment shader的输入参数(除了POSITION)?

但是vertex shader是处理顶点的,fragment shader是处理像素的,没法一一对应啊,在fragment shader中的像素点的输入

参数取的是什么?
...全文
41 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxdfigo 2010-04-27
  • 打赏
  • 举报
回复
那即是说,插值的的算法是固定的了? 那比如法线,贴图等传入参数如何插值?万一插值结果不是我希望的怎么办?
张赐 2010-04-27
  • 打赏
  • 举报
回复
比如要显示一个三角形,但是显卡处理的时候,在光栅化之前都是只处理顶点的。
在光栅化的时候才会根据拓扑结果将这3个顶点用像素连接起来,这里会使用固定在显卡中的一些光栅化方法,比如middle point algorithm,也就是一但顶点和拓扑结果固定了,那么要处理哪一个像素,显卡会自己处理。

该像素的法线,纹理颜色等等各种数据,都可以自己行进任何插值算法来实现。
张赐 2010-04-26
  • 打赏
  • 举报
回复
可以将任何需要的数据传入fragment shader,比如法线贴图等等,然后在fragment shader 里处理即可。

顶点是vertex shader必须有的输出参数

在fragment shader中处理的时候会,处理哪一个像素会根据剪裁空间中顶点位置进行插值计算

4,446

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧