我在反应三纤维中不知所措。我想为相机创建一个装备(这在 three.js 中很简单)。我把相机放在一组里面。如果我想绕 Y 轴旋转相机,我改变父组的旋转。如果我想绕 X 轴旋转它,我会旋转相机本身。这样,我不处理万向节问题(例如,如果 y 旋转为 180 度,则 x 旋转反转)。
在three.js中我会做:
const cameraRig = new THREE.Group();
cameraRig.add(camera);
scene.add(cameraRig);
cameraRig.rotation.y = Math.PI;
camera.rotation.x = Math.PI/8;
但在 react-three-fiber 我不知道。
我有一台我正在使用的相机,来自 useThree
const {camera} = useThree();
ReactDOM.render(
<Canvas>
<ambientLight />
<group rotation={[0,Math.PI,0]}>
<camera rotation={[Math.PI/8,0,0]}/>
</group>
</Canvas>,
document.getElementById('root')
);