OpenGL中着色器,渲染管线,光栅化
这个词儿Adobe官方翻译成栅格化或者像素化。没错,就是把矢量图形转化成像素点儿的过程。我们屏幕上显示的画面都是由像素组成,而三维物体都是点线面构成的。要让点线面,变成能在屏幕上显示的像素,就需要Rasterize这个过程。就是从矢量的点线面的描述,变成像素的描述。
如下图,这是一个放大了1200%的屏幕,前面是告诉计算机我有一个圆形,后面就是计算机把圆形转换成可以显示的像素点。这个过程就是Rasterize。
这个翻译尤其不接地气,简直就是直译(pipe管子line线路)。Pipeline是输送管道的意思。其实是指三维渲染的过程中显卡执行的、从几何体到最终渲染图像的、数据传输处理计算的过程。
————————————
着色器(Shader)
这个翻译的挺好。画画的时候我们经常有这么一个过程:先打线稿,再上色。着色器就是用来做这个工作的。
通常着色器分两种:
1顶点着色器(vertex shader)这个是告诉电脑如何打线稿的——如何处理顶点、法线等的数据的小程序。
2片面着色器(fragment shader)这个是告诉电脑如何上色的——如何处理光、阴影、遮挡、环境等等对物体表面的影响,最终生成一副图像的小程序。
采用了这两种着色器小程序 的 数据传输处理计算的渲染过程,称之为 可编程管线。
管线程序段输入=>顶点着色器=>光栅化=>片元着色器=>屏幕颜色
(上一个函数的)输出 传递给=> (下一个函数作为)输入
转载于:https://www.cnblogs.com/yangai/p/6764383.html
OpenGL中着色器,渲染管线,光栅化相关推荐
- 新手向:如何理解OpenGL中着色器,渲染管线,光栅化等概念
首先,光栅化(Rasterize/rasteriztion). 这个词儿Adobe官方翻译成栅格化或者像素化.没错,就是把矢量图形转化成像素点儿的过程.我们屏幕上显示的画面都是由像素组成,而三维物体 ...
- OpenGL渲染管线,着色器,光栅化等概念理解
卧槽,前些日子看这几个概念就十分想吐槽,这么难理解的概念窃以为纯属翻译的不够接地气. ---- 首先,光栅化(Rasterize/rasteriztion). 这个词儿Adobe官方翻译成栅格化或者像 ...
- OpenGL ES着色器语言之变量和数据类型
所有变量和函数在使用前必须声明.变量和函数名是标识符. 没有默认类型,所有变量和函数声明必须包含一个声明类型以及可选的修饰符.变量在声明的时候首先要标明类型,后边可以跟多个变量,之间用逗号隔开.很多情 ...
- OpenGL ES着色器语言之语句和结构体(官方文档第六章)内建变量(官方文档第七、八章)...
OpenGL ES着色器语言之语句和结构体(官方文档第六章) OpenGL ES着色器语言的程序块基本构成如下: 语句和声明 函数定义 选择(if-else) 迭代(for, while, do-wh ...
- OpenGL编译着色器
1.读入着色器的代码 一般着色器的代码可以写在raw下创建glsl文件. gls是openGL的着色语言. 1.1.顶点着色器 定义的每个单一的顶点,顶点着色器都会调用一次,当他被调用的时候,会在a_ ...
- OpenGL ES着色器语言之变量和数据类型(二)(官方文档第四章)
OpenGL ES着色器语言之变量和数据类型(二)(官方文档第四章) 4.5精度和精度修饰符 4.5.1范围和精度 用于存储和展示浮点数.整数变量的范围和精度依赖于数值的源(varying,unifo ...
- OpenGL ES着色器语言(GLSL ES)规范 ——下篇
文章目录 前言 分支和循环 if.if-else for continue.break.discard 着色器内置变量 函数 函数定义 规范声明 webgl内置函数 存储限定字 const attri ...
- OpenGL 几何着色器细分的实例
OpenGL 几何着色器细分 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 #include <vmath.h> #include <cmath ...
- OpenGL 几何着色器剔除的实例
OpenGL 几何着色器剔除 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 #include <vmath.h> #include <objec ...
最新文章
- JavaScript初学者编程题(17)
- aba问题mysql_解决CAS机制中ABA问题的AtomicStampedReference详解
- js accordian效果
- linux 怎么添加path环境变量,Linux下怎么添加和查看PATH环境变量
- 二叉排序树的后序遍历序列必然是递增的_剑指offer 33——二叉搜索树的后序遍历序列...
- 新年第一篇!西南民族大学第十届校赛(同步赛)
- 软考信息系统项目管理师_信息化与信息系统5_信息系统规划_补充问题---软考高级之信息系统项目管理师007
- python中字典不自动排序/删除指定类型文件/执行可执行文件的返回值
- 蓝桥杯 ADV-89 算法提高 输出九九乘法表
- Linux之rmdir命令
- paip.快捷方式分组管理最佳实践ObjectDock
- 用python爬虫批量下载pdf
- matlab阵列方向性系数,阵列天线方向图的MATLAB实现.pdf
- 图论 二分图 小世界网络 语义网络
- iOS开发APP瘦身之PDF图片资源加载框架
- 报错:IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or
- 灰度值阈值设置matlab,基本全局阈值法(basic global thresholding)MATLAB实现
- 新闻关键字提取和新闻推荐
- ASP+Access的安全隐患及对策
- 泰兰德的记忆·悲情伊利丹
热门文章
- 练习 假设性思维 和Mapping from vision to reality
- 浅谈ASP.NET内部机制(五)
- transmit failed error code:65
- 管理的最高境界:残缺中的和谐
- 虚方法、重写方法和抽象方法[转载]
- php读取 rss pubdate,PHP产生RSS pubDate所需日期时间格式的方法
- Xilinx FPGA开发工具总结
- 从源码分析DEARGUI之add_window
- 使用迁移学习不断的自我纠正神经网络
- BZOJ3529: [Sdoi2014]数表(莫比乌斯反演 树状数组)