我正在使用OrbitControls类,我正在尝试用panFront替换panUp函数。我的目标是沿z轴移动相机。
我做了以下更改,但似乎它不起作用:
var panFront = function() {
var v = new THREE.Vector3();
return function panFront( distance, objectMatrix ) {
v.setFromMatrixColumn( objectMatrix, 2 ); // get Z column of objectMatrix
v.multiplyScalar( distance );
panOffset.add( v );
};
}();
答案 0 :(得分:0)
解决方案:
<强>被修改强>
设置v.y = 0;
以仅在xz轴上保护平移。
var panFront = function() {
let v = new THREE.Vector3();
return function panFront( distance, objectMatrix ) {
v.setFromMatrixColumn( objectMatrix, 2 ); // get Z column of objectMatrix
v.y = 0;
v.multiplyScalar( -distance );
panOffset.add( v );
};
}();
我将x和y分量设置为0。