Java 旋转对象使其变小
当我使用我创建的函数在opengl es中旋转模型矩阵时,模型矩阵会在旋转时使模型变小,我不明白为什么 这是旋转功能的代码(仅绕z轴旋转) 这是乘法函数的代码:Java 旋转对象使其变小,java,math,opengl-es,rotation,Java,Math,Opengl Es,Rotation,当我使用我创建的函数在opengl es中旋转模型矩阵时,模型矩阵会在旋转时使模型变小,我不明白为什么 这是旋转功能的代码(仅绕z轴旋转) 这是乘法函数的代码: public void Multiply(Matrix4x4 m){ float[][] m1 = m.toFloatMat(); for(int i = 0; i < 4; i++){ for(int j = 0; j < 4; j++){
public void Multiply(Matrix4x4 m){
float[][] m1 = m.toFloatMat();
for(int i = 0; i < 4; i++){
for(int j = 0; j < 4; j++){
float value = 0f;
for(int t = 0; t < 4; t++){
value += matrix[i][t] * m1[t][j];
}
matrix[i][j] = value;
}
}
}
public void setValue(float v, int i, int j){
matrix[i][j] = v;
}
对象只会越来越小,我不明白为什么在
乘法
函数中,在计算乘积时覆盖原始矩阵。制作一个临时矩阵来存储结果,然后将其写回类成员矩阵Upps这是我第二次犯这些小错误,这让我发疯了哈哈
public void setValue(float v, int i, int j){
matrix[i][j] = v;
}