我正在学习Android中的OpenGL ES 2.0,您知道提供现有着色器的库吗?
我和一位正在iOS上开发的朋友正在进行一个项目,他告诉我他可以使用GLKBaseEffect来避免使用自定义着色器,只要我们不需要复杂的功能。在Android中是否有相当于BaseEffect的效果?
我问这个是因为我们两个人已经被一位教授分配了这个项目,他告诉我们这个项目开发自定义着色器并不重要,所以我猜测有一个基本着色器汇编我可以浏览 这是对的吗?
感谢您的帮助!
答案 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);
}
现在你只需要在任何地方放置三个值位置,纹理坐标和纹理:)