美文网首页IOS视觉
01-OpenGL常⻅的专业名词

01-OpenGL常⻅的专业名词

作者: 食堂厨子高大彪 | 来源:发表于2020-07-02 12:52 被阅读0次

[TOC]

0. 图形API简介

  1. OpenGL (Open Graphics Library)是⼀个跨编程语⾔、跨平台的编程图形程序接⼝.
  2. OpenGL ES (OpenGL for Embedded Systems)是 OpenGL 的⼦集,针对⼿机、PDA和游戏主机等嵌⼊式设备⽽设计,去除了许多不必要和性能较低的API接⼝。
  3. DirectX 是属于Windows上⼀个多媒体处理框架.并不⽀持Windows以外的平台.
  4. Metal : Apple推出的,该技术能够为 3D 图像提⾼ 10 倍的渲染性能.

1. 上下⽂ ( context )

在应⽤程序调⽤任何OpenGL的指令之前,需要安排⾸先创建⼀个OpenGL的上下⽂。这个上下⽂是⼀个⾮常庞⼤的状态机,保存了OpenGL中的各种状态,这也是OpenGL指令执⾏的基础。
我理解大概相当于ps的工具面板,能存储文字的颜色状态等


image.png

2. 渲染

将图形/图像数据转换成2D空间图像操作叫做渲染(Rendering).

3. 顶点数组( VertexArray ) 和 顶点缓冲区( VertexBuffer )

画矩形时,需要确定六个顶点的位置,这些顶点就是顶点数据。
在OpenGL ES中,有3种类型的图元:点、线、三⻆形。
顶点储存在哪里呢?顶点数据->内存中,这种叫顶点数组.
⽽性能更⾼的做法是,提前分配⼀块显存,顶点数据-> GPU 显存,这种叫顶点缓冲区.

4. 位图

假设120 * 120像素的一张图片,这张图占14400个像素,一般RGB是0-255是256种颜色,就是2的八次方种也叫8位深,一个字节占八位,所以RGBA是4个字节
120 * 120 = 14400 -> RGBA -> 14400 * 4 = 位图

5.管线,固定管线,可编程管线

管线像流⽔线,像汽车流水线.
固定管线: 对应⾮常多模具 (固定着⾊器) ->结果生产出哈弗,wey等
可编程管线: ⾃定义编程模具(GLSL语法来驱使GPU)->结果生产出某大佬专用的哈弗.

6. 着⾊器

函数/⽅法(代码段) -> CPU来使⽤; shader(代码段)->GPU

  1. 固定着⾊器(存储着⾊器)
    苹果提供API(代码段)->调⽤(参数) OpenGL 来提供 ;
  2. ⾃定义着⾊器: 进⾏⾃定义(⾃⼰基于GLSL语法来进⾏编写代码段)

7. GLSL

OpenGL着⾊语⾔(OpenGL Shading Language),是在图形卡的GPU上执⾏的。代替了固定的渲染管
线的⼀部分,使渲染管线中不同层次具有可编程性。⽐如:视图转换、投影转换等。GLSL(GL Shading Language)的着⾊器代码分成2个部分:Vertex Shader(顶点着⾊器)和Fragment(⽚元着⾊器)

  1. 顶点着⾊器: ⽤来处理顶点相关代码 1.确定位置 2.缩放/平移/旋转位置换算 3.⼿机端显示3D ⼿机屏 幕实际2D, 3D图形数据->2D(投影换算) ->OpenGL ES
  2. ⽚元着⾊器: ⽚元(像素点)着⾊器. 处理⼀个⼀个像素点; 120 * 120 像素点. 14400次 GPU 并⾏运 算;

8. 图元和光栅化

过程:顶点—> 图元 —> 片元—> 像素


image.png

放大,看到一格一格的,就是光栅化


image.png

9. 纹理

可以理解为图片,一般为tga格式

10. 混合(Blending)

两张有透明度的图片,有重叠在一起的时候,颜色混合计算.

11.变换矩阵(Transformation) ,投影矩阵Projection

• 变换矩阵. 例如图形想发⽣平移,缩放,旋转变换.就需要使⽤变换矩阵.
• 投影矩阵Projection ⽤于将3D坐标转换为⼆维屏幕坐标,实际线条也将在⼆维坐标下进⾏绘制

相关文章

  • 01-OpenGL常⻅的专业名词

    [TOC] 0. 图形API简介 OpenGL (Open Graphics Library)是⼀个跨编程语⾔、跨...

  • 01-OpenGL基础渲染

    《OpenGL文章汇总》[https://www.jianshu.com/p/96a9716ab8c3]上一篇绘制...

  • 软件测试专业名词,你知道几个?

    专业名词解释

  • 01-OpenGL基本概念

    一、OpenGL简介 OpenGL本身不是API概念,而是一个规范,它是一个巨大的状态机,它的状态就是实际开发中的...

  • OpenGL 入门篇

    本篇,我会初步介绍OpenGL在绘图中的角色定位,以及相关专业名词的介绍。在部分专业名词后面我都附有较详细的解说连...

  • 专业名词

    一、好言 没事别想往事,毕竟都成故事。 二、背景 最近接触了很多有关支付的(主要有大牛讲解相关知识),p2p行业相...

  • 专业名词

    mrp:material requirements planning 物料需求计划。erp的核心atp:avail...

  • 专业名词

    Web1.0:门户时代,网页信息展示,用户很少产生数据,如搜狐新浪。 Web2.0:社交时代,人人产生内容,如微博...

  • 专业名词

    on top of RestAPI :基于RestAPIPOM:project object model

  • 专业名词

    专业名词 W3C W3C 是World Wide Web Consortium 的缩写,表示的是“万维网联盟”。 ...

网友评论

    本文标题:01-OpenGL常⻅的专业名词

    本文链接:https://www.haomeiwen.com/subject/jadlqktx.html