Cocoa touch OpenGL设置纹理的亮度

Cocoa touch OpenGL设置纹理的亮度,cocoa-touch,opengl-es,textures,brightness,Cocoa Touch,Opengl Es,Textures,Brightness,我对OpenGL非常陌生: 在我们的(iOS)项目中,我们使用以下方法渲染纹理: self.effect.texture2d0.name = self.textureInfo.name; self.effect.texture2d0.enabled = YES; self.effect.transform.modelviewMatrix = self.modelMatrix; self.effect.useConstantColor = YES; s

我对OpenGL非常陌生:

在我们的(iOS)项目中,我们使用以下方法渲染纹理:

    self.effect.texture2d0.name = self.textureInfo.name;
    self.effect.texture2d0.enabled = YES;

    self.effect.transform.modelviewMatrix = self.modelMatrix;


    self.effect.useConstantColor = YES;
    self.effect.constantColor = GLKVector4Make(1, 1, 1, self.alphaValue);

    [self.effect prepareToDraw];

    glEnableVertexAttribArray(GLKVertexAttribPosition);
    glEnableVertexAttribArray(GLKVertexAttribTexCoord0);

    long offset = (long)&_quad;
    glVertexAttribPointer(GLKVertexAttribPosition, 2, GL_FLOAT, GL_FALSE, sizeof(TexturedVertex), (void *) (offset + offsetof(TexturedVertex, geometryVertex)));
    glVertexAttribPointer(GLKVertexAttribTexCoord0, 2, GL_FLOAT, GL_FALSE, sizeof(TexturedVertex), (void *) (offset + offsetof(TexturedVertex, textureVertex)));

    glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
我现在尝试更改GLKBaseEffect对象中使用的纹理的亮度。有没有一个简单的方法来实现这一点?我已经搜索了几个小时的文档,但找不到解决方案


谢谢你的帮助

我对GLKit不太熟悉,但你能不能用一种强度小于(1,1,1)的恒定颜色?我认为纹理颜色应该由顶点颜色来调节,但我不确定glkit内部是如何工作的。我已经在使用它来设置透明度(alpha值),但是如果我想使用大于1的亮度怎么办?这行不通。。