GLKTextureLoader を使用してテクスチャをロードできますが、別のスレッドで実行しようとすると、EXEC_BAD_ACCESS の問題が発生します。
作業コード。
NSError *error;
GLuint textureName = self.textureImageInfo.name;
glDeleteTextures(GL_TEXTURE_2D, &textureName);
self.textureImageInfo =
[GLKTextureLoader textureWithCGImage:imageRef options:nil error:&error];
if( error )
{
NSLog(@"Image loading error. %@", error );
}
失敗したコード。
self.textureLoader =
[[GLKTextureLoader alloc] initWithSharegroup:_context.sharegroup];
[self.textureLoader textureWithCGImage:imageRef options:nil queue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0) completionHandler:^( GLKTextureInfo *textureInfo, NSError *error)
{
if( error )
{
NSLog(@"Image loading error. %@", error );
return;
}
}];
追加情報。完了ブロックが実行されているスレッドでは、次のようにEXEC_BAD_ACCESSを取得します
誰かがこれを機能させることができましたか?