OpenGL3:先导篇 渲染管线
一.简介
从OpenG的几何图元 (点 线 三角形构建) 中设置数据,用于构建形状
光栅化:将输入图元的数学描述转换为与屏幕位置对应的像素片元(fragment)
将光栅化产生的每个片元执行片元着色器(fragment shader),从而决定片元的颜色和位置
着色器是用来给GPU(图形处理单元)编译的一种小型程序(一小段代码)
OpenGL中会用到四种着色阶段(shader stage),其中顶点着色器和片元着色器是必须的,细分着色器和几何着色器是可选的
顶点着色器:用于处理顶点数据
细分着色器:
几何着色器:
片元着色器:用于处理光栅化后的片元数据
渲染管线分为固定渲染管线和可编程渲染管线,可编程渲染管线是由着色器(shader)来完成的
因为 OpenGL的4.x版本去掉了固定渲染管线,所以OpenGL的渲染都必须有着色器
OpenGL 的渲染管线可以分为9个步骤 : 顶点数据(Vertices) -> 顶点着色器(Vertex Shader) -> 图元装配(Assembly) -> 几何着色器(Geometry Shader) -> 光栅化(Rasterization) ->片段着色器(Fragment Shader) ->逐片段处理(Per-Fragment Operations) ->帧缓冲(FrameBuffer) ->双缓存交换(SwapBuffer)
二.几何变换
glRotate()
glTranslate()
glScale()
三.投影变换
glOrtho()
glOrtho2D()
gluPerspective()
glFrustum()
四.裁剪变换
glClipPlan()
五.视区变换
glViewport()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)