對 Three.js 的物件來說,給變數賦值的順序沒有關係。這些變數不是命令。你在旋轉之前或是之後設定平移,得到的都是相同結果。你設定的變數通常在繪製時以固定順序運算(縮放、旋轉、平移)。
舉例來說,你旋轉平移一個物件如下:
|
|
這樣沒問題,而以下的程式:
|
|
會做完全一樣的事。再一個例子:
|
|
結果也是一樣;只有最後一個賦值有效。你在設置場景時如何賦值都沒有關係,只有在繪圖時最後一個設定的值才會被取出使用。Three.js 在世界座標空間以固定順序運算: 縮放、旋轉、平移(位置)。
這個行為隨不同的圖學程式庫會有不同,有些會把座標變換當成命令,直接依照你給的順序運算。這裡你是設定變數,不是發出命令,變數之後以固定順序施加在物件上。
如果你想要不同的順序,需要使用 Object3D
,我們不久後會提到。