同じ効果で多くのオブジェクトをレンダリングしたい。
したがって、transform プロパティを変更し、preparetodraw を呼び出します。
GLKMatrix4 baseModelViewMatrix = GLKMatrix4MakeTranslation(0.0f, position, -1.0f);
self.effect.transform.modelviewMatrix = baseModelViewMatrix;
[self.effect prepareToDraw];
glDrawElements(GL_TRIANGLES, sizeof(SquareIndices)/sizeof(SquareIndices[0]), GL_UNSIGNED_BYTE, 0);
baseModelViewMatrix = GLKMatrix4MakeTranslation(0.0f, position+2.0f, -1.0f);
self.effect.transform.modelviewMatrix = baseModelViewMatrix;
[self.effect prepareToDraw];
glDrawElements(GL_TRIANGLES, sizeof(SquareIndices)/sizeof(SquareIndices[0]), GL_UNSIGNED_BYTE, 0);
これは効率的ですか、それともより良いアプローチがありますか? これにより、余分な glUseProgram 呼び出しなどが発生しますか?
ビルドした古いシェーダー マネージャー クラスがありますが、代わりに glkit を使用したいと考えていました。
ヒントをお寄せいただきありがとうございます...