OpenGL与shader区别(三十一)
一、OpenGL: Open Graphics Library -- 开放图形库
用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程api。由近350个不同的函数调用组成,用来绘制从简单的图形到比较复杂的三维图形。
OpenGL可以直接控制GPU渲染图形。
二、shader(着色器)
随着GPU的发展,GPU加入了可编程处理器(shader),开发人员可直接控制GPU的行为。
shader出现之后,GPU上增加可编程处理器,就有类似GLSL的GPU编程语言。
所谓Shader,就是控制GPU的一堆指令集,程序员写出shader,输入到GPU中,GPU执行。
早期的Shader是直接使用汇编, 后来OpenGL ARB组织开发了一种新的编程语言,叫做GLSL(OpenGL shading language). 该语言类似于C风格,程序员们就可以很方便的写出可直接控制GPU的代码了。
所谓控制GPU,就是控制GPU的处理器,现阶段,GPU有以下几个处理器:
1. Vertext processor(顶点处理器)
2. Tessellation Control processor(曲面控制处理器)
3. Tessellation Evaluation processor(曲面细分处理器)
4. Geometry processor(几何处理器)
5. Fragment processor(片元处理器)
于是,shader就分为:
1. Vertext shader(顶点着色器)
2. Tessellation Control shader(曲面控制着色器)
3. Tessellation Evaluation shader(曲面细分着色器)
4. Geometry shader(几何着色器)
5. Fragment shader(片元着色器)
OpenGL与shader区别(三十一)相关推荐
- OpenCV学习笔记(三十一)——让demo在他人电脑跑起来 OpenCV学习笔记(三十二)——制作静态库的demo,没有dll也能hold住 OpenCV学习笔记(三十三)——用haar特征训练自己
OpenCV学习笔记(三十一)--让demo在他人电脑跑起来 这一节的内容感觉比较土鳖.这从来就是一个老生常谈的问题.学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那 ...
- 【Unity3D Shader编程】之五 圣诞夜篇 Unity中Shader的三种形态对比 混合操作合辑
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...
- 【Modern OpenGL】Shader
Shaders 正如在上一篇教程中提到的,shader是在GPU中运行的小程序.如上一个教程中实现的最简单的vertex shader和fragment shader,一个shader基本上负责图形渲 ...
- FreeSql (三十一)分区分表
分区 分区就是把一个数据表的文件和索引分散存储在不同的物理文件中.把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上,数据库不同实现方式有所不同. 与分表不同,一张大表进行 ...
- 程序员编程艺术第三十 三十一章 字符串转换成整数,通配符字符串匹配
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 第三十~ ...
- 【正点原子STM32连载】 第三十一章 ADC实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
1)实验平台:正点原子MiniPro H750开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=677017430560 3)全套实验源码+手册+视频 ...
- 偷学Python第三十一天:Python正则表达式的语法以及re模块的使用
偷学Python第三十一天:Python正则表达式的语法以及re模块的使用 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志.--苏轼 文章目录 偷学Python第三十一天:Python正则表达式的语 ...
- 【正点原子Linux连载】第三十一章 U-Boot顶层Makefile详解 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0
1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...
- 《快速掌握PyQt5》第三十一章 绘图与打印
第三十一章 绘图与打印 31.1 画笔.画刷和字体 31.2 利用双缓冲技术实现实时绘图 31.3 解决重影问题 31.4 打印 31.5 小结 绘图操作主要通过QPainter类来进行,通过该类我们 ...
最新文章
- 2021年大数据HBase(二):HBase集群安装操作
- golang内存对齐
- C++ 11 笔记 (四) : std::bind
- sql server 2008学习4 设计索引的建议
- asp.net 返回超时的解决方法
- markdown 语法_Markdown 基本语法
- java中簇如何表示_聚簇索引和非聚簇索引实际上是什么意思?
- python全栈索引
- 大智慧c语言dll,dzh2 大智慧dll 插件 - 下载 - 搜珍网
- 在 Coding 上搭建 Hexo 个人博客!
- MySQL(八)事务的隔离级别
- linux shell 脚本中变量截取
- 太强了!这款轻量级的数据库中间件完美解决了SpringBoot中分库分表问题?
- arduino烧录_如何给AVR单片机烧录程序
- 联想G480安装CentOS电缆驱动器
- UltraCompare无限30天试用的方法
- TMS320F28379D创建工程
- 安卓psp模拟器联机教程_侠盗猎车手:血战唐人街PSP版模拟器实测 有链接,有联机教程...
- python字符串前面u、r、b含义以及str、bytes互转
- Taro开发微信小程序实现简单的登录退出功能