私は、(GLKViewを使用して)iOS 5ウェイを動作させるためにテクスチャを取得するのに苦労していますが、旧式のOpenGLES 1.1を使用しています。私は古い2D(スプライト)スタイルのゲームフレームワークを移行しています。 XcodeでOpenGLゲームの例を取り上げ、kEAGLRenderingAPIOpenGLES1でEAGLContextを初期化するように変更しました。私は私の古いテクスチャローダーアルゴリズム(およびベースエフェクトはシェーダで動作します)を持っているので、GLKTextureLoader & GLKBaseEffectも使用しようとしていません。これは、私はViewControllerを現在持っているものです。GLKViewとOpenGLES 1.1のテクスチャ?
- (void)viewDidLoad {
[super viewDidLoad];
[self setContext : [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES1]];
[EAGLContext setCurrentContext: [self context]];
GLKView *view = (GLKView *)self.view;
[view setContext: [self context]];
[view setDrawableDepthFormat: GLKViewDrawableDepthFormatNone];
[view setDrawableColorFormat: GLKViewDrawableColorFormatRGBA8888];
[view setMultipleTouchEnabled: NO];
[self setupGL];
}
そしてsetupGL中:
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrthof(0, backingWidth, 0, backingHeight, -1, 1);
glViewport(0, 0, backingWidth, backingHeight);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
//landscape mode
glTranslatef(backingWidth/2, backingHeight/2, 0);
glRotatef(90, 0, 0, 1);
glTranslatef(-backingHeight/2, -backingWidth/2, 0);
glDisable(GL_DEPTH_TEST);
glEnable(GL_BLEND);
glEnable(GL_TEXTURE_2D);
glEnableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_ALPHA);
の問題は、私は上記の最後の行でのOpenGLから0x0500エラーを取得しています、ここで開始します。私は実際には、違いは何かを把握することはできません。これは古いコードでは問題なく動作します(少なくともそうでなければ、問題の原因ではありません)。 GL_APLHAの代わりにGL_MODULATEを使用すると、GLエラーはありませんが、テクスチャはまだ機能しません。これは私がそれらをロードする方法である:
glGenTextures(1, &textures[textureNum]);
glBindTexture(GL_TEXTURE_2D, textures[textureNum]);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, data);
残りの部分は基本的に、その後のOpenGLに頂点データを送信しますが、私はそれが古いコードで動作しますので、それは、[OK]をする必要があり仮定私の古いrenderEngine、呼び出しです。 ここで私は何を欠場するのですか?どんな助けもありがとう。
Wowは、StackOverflowが最初から挨拶を取り除いたことを知らなかった... – fishgen