0
在使用glUniformMatrix4fv
之前,我應該使用mMVPMatrix
的內容填充float[]
的哪個順序?從javax.vecmath.Matrix4f創建一個float []
我正在使用javax.vecmath
庫。
初始化變量
Matrix4f mMVPMatrix = new Matrix4f();
Matrix4f mProjectionMatrix;
Matrix4f mViewMatrix;
設定值GLEventListener.init()
mProjectionMatrix = createPerspectiveProjection(60.0f, width/height, 0.1f, 100.0f); // method that returns an object of type `Matrix4f`
mViewMatrix = new Matrix4f();
mViewMatrix.setIdentity();
更新的GLEventListener.display()
mMVPMatrix = mProjectionMatrix;
mMVPMatrix.mul(mViewMatrix);
得到參考GLSL變量中汲取
mMVPMatrixHandle = gl2.glGetUniformLocation(shaderProgram, "uMVPMatrix");
gl2.glUniformMatrix4fv(mMVPMatrixHandle, 1, false, mMVPMatrix, 0);
uMVPMatrix
是glsl
可變..
#version 120
uniform mat4 uMVPMatrix;
attribute vec4 vPosition;
void main() {
gl_Position = uMVPMatrix * vPosition;
}