• OpenGL ES入门


    1. What is OpenGL ES and GLKit

    首先看一下整体架构图

    image

    OpenGL ES是我们与GPU交互的底层API(lowest level API)

    • 上层的框架包括iOS的Core Animation->Core Graphics->UIKit来进行iOS App中UI层面的操作
    • cocos2D / Unity等 游戏开发框架
    • Sprit Kit是Apple提供的2D游戏框架
    • GLKit 也是一种实用的2D / 3D框架

    2. OpenGL ES 1.0 vs OpenGL ES 2.0

    image

    上图展示了两个版本OpenGL ES的管线(pipeline)的差异,首先整体流程大致相同,变化的部分主要集中在绿色区域。
    在OpenGL ES1.0中 transform & lighting 和 texture / color sum fog / alphatest只提供了函数接口(build-in function)让我们来执行其中的操作。
    但在OpenGL ES2.0中暴露了这两个部分内部的操作接口,提出了可编程管线(programmable pipeline),我们通过代码自定义shader来实现相应功能。虽然这增加了代码的复杂度,但是极大地提高了灵活性。

    3. GLKit

    • GLKView / GLKViewController:GLKit提供的上层view和vc(相信iOS开发的同学都非常熟悉这两个概念),内部执行了一系列初始化流程,帮助我们更好的使用。
    • GLKMath:3D 数学函数库,可以进行一些矩阵运算、向量计算等操作
    • GLKTextureLoader: 封装了一系列Texture相关操作
    • GLKBseEffect:封装了一些列shader操作,帮助开发者将代码从OpenGL 1.0迁移至2.0

    来源于:西蒙系列的OpenGLES教学 https://www.youtube.com/watch?v=VN_qGY43A1Y

  • 相关阅读:
    如何寻找第二大轮廓
    基础_模型迁移_CBIR_augmentation
    基础_模型迁移_CBIR_augmentation
    MQ通道配置
    WebSphere MQ 入门指南
    P2P小贷网站业务数据流程分享
    发博客后自动同步摘要到新浪微博
    Linux Shell脚本攻略 读书笔记
    Linux Shell 文本处理工具集锦
    Berkeley 四种产品如何选择?
  • 原文地址:https://www.cnblogs.com/DaiShuSs/p/14747801.html
Copyright © 2020-2023  润新知