OpenGL ES/Metal => GPUImage

376 阅读1分钟

OpenGL ES -  跨平台
Metal           -  Mac / ios平台

OpengGL ES 的 处理图片、 视频、图形的渲染 与 核心专业名词介绍

渲染的流程:

顶点着色器,确定图片/图形/视频 的位置,有几个顶点就执行几次

片元着色器,区域范围内的像素点填充 ,比如**w个

顶点 和 片元着色器 的计算都是在GPU 上完成,

GPU , 负责渲染工作,这些工作是因为 GPU 硬件在设计的时候 有很多独立的计算单元, 可以实现高并发,而无依赖关系。
而不像CPU一样,通过快速切换时间片来实现。



shader文件, 需要开发者在xcode中手动进行编译和链接

.vsh  顶点着色器代码

.fsh  片元着色器

OpenGL-es shaderlanguage

vec4 向量 ,思维向量,4个数字(r g b a)

 获取当前位图在当前像素点的颜色值     texture2D(Texture, TextureCoordsVarying)
获取对应位图纹理下颜色值                                            位图   ,   位置点(纹理坐标)
return 一个颜色值          gl_FragColor  =  vec4( mask.rgb  ,   1.0 );

 滤镜就是修改每一个像素点的 rgba,