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