opengl es 学习笔记(一):流水线

本文详细介绍了OpenGL ES 2.0渲染管线的各个阶段,包括顶点数组/缓冲对象、顶点着色器、图元装配、光栅化、片段着色器、每像素操作及帧缓存等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过网上的OpenGl ES 2.0编程指南学习 opengl es的基础知识

Render Pipeline(流水线)



1,vertex arrays/buffer objects(获取顶点相关数据)

本阶段主要是获取顶点的基本数据,包括顶点位置,法线,顶点色,蒙皮信息,这些东西都是美术制作的资源或者程序产生的资源,统统看做基本资源

2.Vertex Shader(顶点编程)

对资源进行加工,包括蒙皮对顶点的影响,顶点坐标系变换,顶点色输出,顶点动画等,可以看做是对物体顶点的可修改阶段.

这个阶段可以接受的属性包括:Attibute,Uniforms,Samplers,Temporary Variables

输出的属性包括:Varying

3.Primitive Assembly(图元装配)

对顶点进行装配,产生可渲染得点,线,面

4.Rasterization(光栅化)

将图元信息根据屏幕进行光栅化,产生平滑的像素点信息,这些信息包括顶点基本信息,深度,模板,屏幕坐标等

5.Fragment Shader(像素编程)

对每一个光栅化后的像素点应用贴图混合,在这里合成物体基本贴图,阴影,后期等等操作

这个阶段可以接受的属性包括:Attibute,Uniforms,Samplers,Temporary Variables,Varyings

输出的属性包括:gl_FragColor


6.Per-Fragment Operations(每像素的条件筛选)

本阶段将决定像素的显示方式,将进行下列测试:


Pixel Ownership Test:像素所有权测试,产生在窗口模式下的前后窗口状态下的显示测试

Scissor Test:剪切测试,测试像素是否包含在剪切矩阵内

Stencil Test:模板测试,通过像素的模板值与Stencil Buffer中的值进行比较测试

Depth Test:深度测试,通过像素深度值进行比较测试

Blending:混合,使像素之间通过混合公式进行混合

Dithering:抖动,用几种色彩模拟大范围内的多种色彩模式

7Frame Buffer(帧缓存)

建立的一块后台数据缓存,用来保存将递交到屏幕的信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值