次のような射影行列を使用する必要がありますか?
Matrix.frustumM(mProjMatrix, 0, -ratio, ratio, -1, 1, 3, 7);
and
Matrix.setLookAtM(mVMatrix, 0, 0, 0, 3, 0f, 0f, 0f, 0f, 1.0f, 0.0f);
// Calculate the projection and view transformation and store results in mMVPMatrix
Matrix.multiplyMM(mMVPMatrix, 0, mProjMatrix, 0, mVMatrix, 0);
z軸を中心とした単純な2D(スプライト)回転を行うのに問題はありません。
これまでで最も成功したのは、回転行列を操作 (回転と移動) し、頂点シェーダーに直接渡すことです。
完璧ではなく、多少のせん断/ゆがみ/歪みが伴いますが、少なくともクワッドの「ピボット」/中心点を移動できます。上記の行を全体に配置すると、すべてが壊れて、あらゆる種類の奇妙な結果が得られます。
What is the actual purpose of the lines above (I have read the android docs but I dont understand them) and are they necessary? Do people write OpenGl apps without them?
ありがとう!!