淘先锋技术网

首页 1 2 3 4 5 6 7

这是个人学习笔记,有错欢迎指出
学习链接:

图形API定义:是一个图形库,用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。针对GPU。

当前PC及手机平台主流图形API介绍

DirectX、Opengl、Opengl ES

基础概念

  • 应用端: 即我们自己的程序端,相对于opengl es,我们属于应用端
  • 图元: 要渲染的几何物体,或者形状。比如要渲染一个正方形的图片,就是一个图元,要渲染两条直线,这两条直线也是图元
  • 纹理: 通俗点,可以理解为一张图片,在opengl es中纹理就是图片的另外一种叫法
  • 纹素:纹理的基础单元,也就是像素
  • 顶点数组 顶点指的是组成图元的各个顶点的坐标数据(在3D笛卡尔坐标中即x,y,z坐标),这些坐标数据可以一起存到一个内存数组中,这个数组就叫做顶点数组
  • 顶点缓冲区 在显存中专门分配一块显存来存储这个顶点数组,这个显存就称为顶点缓冲区
  • 顶点着色器
  • 片元着色器

Opengl 介绍

Khronos 定义了OpenGL ,微软自己定义了DirectX 目前手机,不管是 iOS 还是 Android,都是支持 OpenGL ES
电脑:Windows 系统支持 DirectX 和 OpenGL

Linux/Mac(Unix)系统支持 OpenGL

Opengl ES1.1 - Opengl ES 2.0、Opengl 2.0 - Opengl ES 2.0 改变了片元着色器


在这里插入图片描述

Opengl ES

相同点:相比于 OpenGL ES 1.x 系列的固定功能管线,OpenGL ES 2.0 和 OpenGL ES 3.0 都是可编程图形管线。开发者可以自己编写图形管线中的 顶点着色器 和 片段着色器 两个阶段的代码。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Opengl ES3.0

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

骁龙Adreno

Adreno是由高通开发的SIP核GPU并用于其自家的SoC,该核心最初作为BitBoys(英语:BitBoys)从事GPU开发工作。
2006年,BitBoys被ATI收购开设Imageon产品线。
2006年AMD收购ATI。2
009年1月,AMD出售Imageon予高通[1]。随后,Imageon被更名为Adreno,也就是我们常说的骁龙手机端GPU框架
查看对应的手机芯片支持的OpenGL es 支持的版本
Adreno

任务

在这里插入图片描述

OpenGL ES 3.2的骁龙GPU型号

Adreno 420以上的版本都支持OpenGL ES 3.2
在这里插入图片描述
参考别人的笔记:
在这里插入图片描述

Vulkan

Vulkan画一个三角形需要1000行,我画了一半就没有继续下去,但是它更接近底层的设计,所有的控制权和责任都在程序本身上,日后一定会成为主流API
在这里插入图片描述

Vulkan - 高性能渲染