因此,我正在学习用JavaScript使用WebGL进行编程,并且出现了两个看起来非常相似的术语。
modelMatrix.setTranslate(0,0,0);
modelMatrix.translate(0,0,0);
仅以零为例,modelMatrix是建模矩阵。
设置翻译和翻译之间有什么区别?
先感谢您
最佳答案
setTranslate
就像二传手。它根据参数创建一个新的转换矩阵,并将其存储到modelMatrix
。例如,假设modelMatrix
的值为
1 0 0 2
0 1 0 2
0 0 1 2
0 0 0 1
当您应用此代码
modelMatrix.setTranslate(0,0,0);
时,它将变为1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
相反,
translate
将已经存储在modelMatrix
中的矩阵乘以根据参数创建的矩阵,并将结果存储到modelMatrix
中。例如,
modelMatrix
的值为1 0 0 2
0 1 0 2
0 0 1 2
0 0 0 1
当您应用此代码
modelMatrix.translate(0,0,0);
时,它将变为1 0 0 2 1 0 0 0 1 0 0 2
0 1 0 2 x 0 1 0 0 = 0 1 0 2
0 0 1 2 0 0 1 0 0 0 1 2
0 0 0 1 0 0 0 1 0 0 0 1