离题:业内的一个朋友问我和我聊天时X1600有多少个着色器,我问他是否是着色器处理器。朋友问:着色器不是硬件单元吗?我说,当然不是。我再次检查,发现网上有很多图形卡术语的描述,尤其是基本术语着色器的翻译似乎具有误导性。有任何名称,我从描述中无法理解着色器的含义。粗略澄清一下,使人更清楚。
我从很久以前的信息中发现了这句话:着色器驱动可编程图形管线,并定义对象的最终表面特性。这句话是对着色器的最精确,最精确的描述,包括了着色器的用途,目的和工作方法。
我们知道用于3D硬件的两个主要API,OpenGL和Direct3D具有固定的渲染管道,即管道。我们提供数据参数(例如顶点位置,法线和纹理坐标),然后定义光源。您可以获取渲染的图像。在这种特定的渲染过程中,游戏和程序设计人员无法实现特定的控制。
每个人都熟悉以下部分。从DX8和OpenGL扩展开始,渲染管线中引入了可编程功能,因此游戏开发人员可以通过编写在图形硬件上运行的小程序来控制特定的渲染。该过程在Microsoft DirectX中被称为此程序代码着色器,在OpenGL中被称为Program,它被翻译为“程序”(或OpenGL是一种...)。因此,着色器更多是可编程控制的概念。
因此,在考虑了很长时间之后,我找不到添加到着色器中的非常合适的名称,因此我应该简单地将其称为着色器。无论如何,每个人都理解。如果必须在着色器中添加中文名称,希望它是“ renderer”。
以下内容是图形芯片中到处讨论的部分,我将在此处复制:
着色器有两种,
一个是顶点级别的,称为顶点着色器(OpenGL,称为顶点程序),它取代了固定渲染管线的变换和光照部分,程序员可以自己控制顶点的变换和光照。在硬件中处理顶点着色器的单元称为顶点着色器处理器(顶点着色器处理器)。例如,X1600芯片中有5个顶点着色器处理器。
一个是像素级的,称为像素着色器(OpenGL称为片段程序),程序员可以自己控制像素颜色和纹理采样,而不是固定渲染管线的光栅化部分。在硬件中处理像素着色器的单元称为像素着色器处理器(像素处理单元)。例如,X1600芯片中有12个顶点着色器处理器。
在管线渲染过程中引入可编程功能是实时渲染的一场革命,它为游戏开发人员提供了更大的创作自由并可以创造更好的效果。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shenmilingyu/article-325751-1.html
跑到浙江这些粗制滥造的工厂去
爱玩微博~~~~