美文网首页openGL ES
分析GPUImage-GPUImageContext

分析GPUImage-GPUImageContext

作者: Stroman | 来源:发表于2018-04-22 19:40 被阅读141次

    该类的主要功能

    1. 为该库功能提供基本的上下文环境。
    2. 对本设备的图像处理的能力给出判定。
    3. 对外的操作接口。
    GPUImageContext

    持有的对象

    1. contextQueue:上下文队列。
    2. shaderProgramUsageHistory:一个数组,着色器程序使用历史。
    3. shaderProgramCache:着色器程序缓存,一个字典。
    4. sharedImageProcessingContext:供图像处理使用的上下文。
    5. sharedFramebufferCache:公共的帧缓冲区缓存。
    6. currentContext:当前正在使用的上下文。
    7. contextShaderProgram:当前正在使用的,被激活的着色器程序。
    8. coreVideoTextureCache:核心视频纹理的缓存。

    本设备能力的判定

    1. deviceSupportsRedTextures:判断本设备是否支持红色的纹理。
    2. deviceSupportsOpenGLESExtension:判断该设备是否支持某种OpenGL ES的字符串扩展。
    3. maximumVaryingVectorsForThisDevice:该设备支持的最大的转换向量。
    4. maximumTextureSizeForThisDevice:获取该设备能支持的最大纹理大小。
    5. maximumTextureUnitsForThisDevice:获取该设备能支持的最大纹理单元。
    6. supportsFastTextureUpload:判断本设备是否支持快速纹理的上传。
    7. deviceSupportsFramebufferReads:判断设备是否支持帧缓冲区的读取。
      虽然这只是些对外的接口,但是每个都反映出来当前设备所具备的图像的处理能力,接口本身并不重要,这些能力才是重要的!

    本类提供的对外接口

    1. sizeThatFitsWithinATextureForSize:给出一个适合某种纹理大小的size。
    2. presentBufferForDisplay:把一个帧缓冲区展示在屏幕上。
    3. programForVertexShaderString:(NSString *)vertexShaderString fragmentShaderString:(NSString *)fragmentShaderString:根据图元着色器字符串和片元着色器来获取OpenGL处理接口。
    4. useSharegroup:用于设置上下文群组。
    5. createContext:创建OpenGL ES 2.0的图形图像上下文。
    6. context:无中生有的创建上下文。

    上一篇:分析GPUImage-GLProgram
    下一篇:分析GPUImage-GPUImageInput

    相关文章

      网友评论

        本文标题:分析GPUImage-GPUImageContext

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