Ios5 如何将自定义着色器与GLKit一起使用

Ios5 如何将自定义着色器与GLKit一起使用,ios5,shader,glkit,Ios5,Shader,Glkit,我一直在读到使用GLKit和您自己的自定义着色器是多么容易。但是,到目前为止,我还没有找到任何关于如何真正做到这一点的信息。如何将我自己的着色器“插入”到现有的GLKit项目中?好吧,你可以看看这个博客,它使用GLKit构建一个基本的OpenGL ES 2.0应用程序。如果您想深入了解,还可以链接到其他博客: 它唯一没有涵盖的是GLKBaseEffect,但是如果您想像您所说的那样构建自定义着色器,您肯定不想使用它 GLKit提供了4个基本功能: 数学库(矩阵、向量等) 一种视图/控制器组合,

我一直在读到使用GLKit和您自己的自定义着色器是多么容易。但是,到目前为止,我还没有找到任何关于如何真正做到这一点的信息。如何将我自己的着色器“插入”到现有的GLKit项目中?

好吧,你可以看看这个博客,它使用GLKit构建一个基本的OpenGL ES 2.0应用程序。如果您想深入了解,还可以链接到其他博客:

它唯一没有涵盖的是GLKBaseEffect,但是如果您想像您所说的那样构建自定义着色器,您肯定不想使用它

GLKit提供了4个基本功能:

  • 数学库(矩阵、向量等)
  • 一种视图/控制器组合,专门用于绘制OpenGL内容
  • 纹理加载器类(GLKTextureLoader)
  • GLKBaseEffect,它模仿OpenGL 1.0的固定管道

  • 从Deli链接的博客来看,解决方案似乎如下:首先,您需要创建2个文件并将它们添加到您的项目中。我称它们为“fragment.glsl”和“vertex.glsl”。然后,在控制器的.m文件的顶部,添加#define VERTEX_SHADER@“VERTEX”#define FRAGMENT_SHADER@“FRAGMENT”1.使用NEON so的矩阵、向量和四元数数学库性能非常高。2.专门为绘制OpenGL ES内容而制作的视图/视图控制器组合。3.纹理加载器类(GLKTextureLoader).4.GLKBaseEffect,它模仿OpenGLES1.1的固定管道。“这个修正是一个匿名用户的建议,但被拒绝了。将其添加为注释。