Shader 编程入门

默认教学计划
5991人加入学习
(29人评价)
价格 免费
教学计划
会员免费学 加入学习

第一节 GPU的渲染过程

 

[展开全文]

GPU的渲染流程:

定点着色器:对每一个定点调用定点着色器,计算定点的颜色和进行左边变化

几何着色器:输入点线面等图元数据,生成新的图元

裁剪:裁剪无需渲染的部分, 可以设置

屏幕映射:将坐标映射到屏幕坐标系,不可编程

三角形设置:得到三角形对屏幕像素的覆盖信息

三角形变换:生成片元。对片元内部的像素插值

片元着色器:纹理采样,计算光照结果

逐片元操作:混合和写入像素颜色

[展开全文]

GPU的渲染流程:

max命令:Edt Normals(法线显示命令)

去掉物体表面的光滑组,法线显示每个点有4根线,用于不平滑的客观需求;

渲染流程:

应用阶段=》几何阶段=》光栅化阶段

DrawCall 越高,配置需求越高,游戏越卡

 

顶点着色器-集合着色器-裁剪-屏幕映射-三角形变化-三角形变幻-偏远着色器-逐片元操作

 

 

[展开全文]

1.着色器背后机制 (gpu的渲染流程)

shader:告诉gpu如何计算

[展开全文]

1.gpu 渲染流程

法线 

模型0-数据 、、、、

 

[展开全文]

Shade(着色器)

GPU渲染流程

三维模型渲染

[展开全文]

shader:着色器
计算机中的三维模型本质上是一组数据,包括空间中顶点位置,法线方向,定点颜色等
GPU通过包括在模型的一系列数据进行计算,将结果提交给显示器
数据是美术做的事情,如何去计算数据是shader做的


应用阶段 (数据准备阶段,cpu)
:三维建模
  场景搭建
  灯光设置
  贴图设置

几何阶段 (GPU)
:主要编辑顶点着色器及片元着色器

cpu与Gpu系统工作:

DrawCall:一个场景的drawCall多会在低端设备卡顿

cpu准备数据和渲染状态,调用drawCall,Gpu开始渲染。DrawCall很缓慢,cpu准备数据放到显存,Gpu从显存中取很慢,这就是一次drawCall

Gpu的渲染流程

顶点着色器:对每个顶点调用顶点着色器,计算顶点的颜色和坐标变换。

几何着色器:用点线面等图元数据通过Gpu的特性生成新的细节(新的图元,逐图元的着色)

裁剪:将无需渲染的部分裁剪掉,可以设置裁剪哪个面

屏幕映射:将坐标映射到屏幕坐标系,不可编程,将三维图像变为二维映射

三角形设置:根据顶点位置,颜色深度等得到三角形对屏幕像素的覆盖信息

三角形变换:检查像素是否被遮盖,如果是生成片元对片元内的像素进行插值

片元着色器:进行纹理采样,对每个像素计算光照结果。

逐片元操作:

 

OpenGL && DirectX :图像应用接口

显卡-》显卡驱动-》图像应用接口-》开发者

HLSL (DirectX兼容的高级shader编程语言)

GLSL(OpenGL兼容的高级shader编程语言)

CG (C for Graphic )for Nvidia

unity Shader Language (CG/HLSL)

[展开全文]

1.计算机中的三位模型本质上是一组数据,包含空间中顶点的位置,法线方向,顶点颜色等等

2.GPU 就是将包括三维模型在内的一系列数据进行计算,并将结果显示在屏幕上的设备

3.Shader的任务就是告诉GPU如何进行计算

4.CPU准备好一次需要渲染的数据就是一次DrawCall

 

[展开全文]