Android GLKBaseEffect等效(已存在的OpenGL着色器)

时间:2013-11-19 14:41:58

标签: android opengl-es opengl-es-2.0 shader glkbaseeffect

我正在学习Android中的OpenGL ES 2.0,您知道提供现有着色器的库吗?

我和一位正在iOS上开发的朋友正在进行一个项目,他告诉我他可以使用GLKBaseEffect来避免使用自定义着色器,只要我们不需要复杂的功能。在Android中是否有相当于BaseEffect的效果?

我问这个是因为我们两个人已经被一位教授分配了这个项目,他告诉我们这个项目开发自定义着色器并不重要,所以我猜测有一个基本着色器汇编我可以浏览 这是对的吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

Android不支持像GLKBaseEffect类这样的东西,但是我想让你知道着色器只支持可编程,所以如果使用简单的着色器代码,着色器就不会很难。

如果您不想进行任何后期图像处理,请不要更改仅应该执行的片段着色器。

顶点着色器

attribute vec4 position;
attribute vec4 inputTextureCoordinate;
varying vec2 textureCoordinate;
void main(void)
{ 
gl_Position =  position;
textureCoordinate = inputTextureCoordinate.xy;
}

片段着色器

uniform sampler2D texture0;
varying vec2 textureCoordinate;
void main()
gl_FragColor = texture2D(texture0, textureCoordinate);
}

现在你只需要在任何地方放置三个值位置,纹理坐标和纹理:)