unity3d - 如果片段着色器只接收顶点输入,它如何为每个像素运行?
问题描述
顶点着色器对对象多边形的每个顶点执行一次,返回其对应的v2f
. 因此,这意味着顶点着色器不会针对每个像素运行。
由于片段着色器将对象作为输入,如果s 仅针对与模型顶点的屏幕位置相对应的几个像素生成,v2f
它应该如何为每个像素运行?v2f
解决方案
片段着色器不会“仅接收顶点输入”
顶点着色器针对每个顶点坐标执行,它的输入是顶点及其属性。
一些顶点形成一个Primitive(例如 3 个三角形)。顶点着色器的输出被插值到光栅化过程中被基元覆盖的每个片段。
如果片段着色器阶段在顶点着色器阶段之后,则顶点着色器的插值输出是片段着色器的输入。所以对每个片段执行片段着色器。
推荐阅读
- matlab - 多行 fprintf() 每行使用每个数组中的一个元素
- python-3.x - 测试 python 3.5 时,在 Appveyor Windows 容器中找不到 SIP 的本地包或工作下载链接
- r - 整数规划的零解
- sql - 如何将 LEFT JOIN 的两个结果集与一个键混合在一起?
- javascript - 如何使用 css 属性 jquery 弹出窗口
- visual-studio - Visual Studio 2017 - 运行具有大文件大小的 Azure 函数时出现 System.OutOfMemoryException
- java - 模拟开假反应体
- java - Can I instantiate the Class object using its name
- jmeter - 通过发送相同的请求,我需要特定数量的响应数据“成功”
- python - 运行 model.fit 时不显示指标