現在、新しい iPad の GLKView で OpenGL ES 2.0 を使用しています。glColor4f を呼び出すたびに、GL_INVALID_OPERATION エラーが発生する以外に何も起こらないようです (つまり、必要なポリゴンに色を付けません)。次に、テクスチャをロードしようとするとすぐに、次のエラー メッセージが表示されます。
Error loading file: The operation couldn't be completed. (GLKTextureLoaderErrorDomain error 8.)
しかし、glColor4f が呼び出される前は、すべて正常に動作します。drawInRect のコードは次のとおりです。
- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect
{
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT);
// Render the object with GLKit
self.effect.texture2d0.enabled = NO;
self.effect.transform.modelviewMatrix = _defaultModelMatrix;
[self.effect prepareToDraw];
// Render the grid
glBindBuffer(GL_ARRAY_BUFFER, _gridVertexBuffer);
glEnableVertexAttribArray(GLKVertexAttribPosition);
glVertexAttribPointer(GLKVertexAttribPosition, 2, GL_FLOAT, GL_FALSE, 0, 0);
glColor4f(1.0f, 0.0f, 0.0f, 1.0f);
glDrawArrays(GL_TRIANGLES, 0, TRIANGLES * 6);
glDisableVertexAttribArray(GLKVertexAttribPosition);
glBindBuffer(GL_ARRAY_BUFFER, 0);
}
誰かが助けてくれれば、本当に感謝しています。ただし、指摘すべきことがいくつかあります。色を付けようとしているオブジェクトは VBO に保存されており、(赤くしようとしているにもかかわらず) 白い色できれいにレンダリングされます。
ありがとう