0
我是iOS和OpenGL编程新手,目前我正在编写一个使用OpenGL ES 2.0和GLKit进行练习的简单程序。现在我可以成功加载PNG文件并将其显示在屏幕上。如何使用OpenGL ES 2.0和GLKit设置图像的不透明度?
我在我的程序中使用了GLKViewController,并在viewDidLoad
中做了一些初始化。这里是我的glkView:drawInRect
方法中的代码:
glClearColor(115.0/255.0, 171.0/255.0, 245.0/255.0, 1.0);
glClear(GL_COLOR_BUFFER_BIT);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
self.effect.texture2d0.name = self.textureInfo.name;
self.effect.texture2d0.enabled = YES;
[self.effect prepareToDraw];
glEnableVertexAttribArray(GLKVertexAttribPosition);
glEnableVertexAttribArray(GLKVertexAttribTexCoord0);
long offset = (long)&_quad;
glVertexAttribPointer(GLKVertexAttribPosition, 2, GL_FLOAT, GL_FALSE, sizeof(ImageVertex), (void*)(offset + offsetof(ImageVertex, geometryVertex)));
glVertexAttribPointer(GLKVertexAttribTexCoord0, 2, GL_FLOAT, GL_FALSE, sizeof(ImageVertex), (void*)(offset + offsetof(ImageVertex, textureVertex)));
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
上面的代码工作得很好。现在我想设置PNG图像的不透明度。这听起来很简单,但我不知道如何改变不透明度...