如何在反应三纤维中创建第一人称控制?
How can I create first person controls in react three fiber?
我正在尝试创建一种情况,其中相机是固定的,您可以通过拖动鼠标围绕 y 轴或轴旋转视图。
类似于 threejs.org/examples/?q=panorama#webgl_panorama_cube 的东西。但我应该能够在一个对象内进行操作。
我尝试使用 drei,但只能使用 PointLockControls 和 OrbitControls 成功,这两者都没有帮助,因为您无法使用 PointLockControls 启用光标,也无法使用轨道控件固定相机位置。
codesandbox 中的一个小例子会非常有用。非常感谢!
该示例使用 OrbitControls
and keeps the camera in place by disabling zoom and panning. You can also restrict rotation to the Y axis by setting its min and max polar angles.
Drei's OrbitControls 接受属性,您可以在其中直接设置这些选项。
<OrbitControls
enableZoom={false}
enablePan={false}
minPolarAngle={Math.PI / 2}
maxPolarAngle={Math.PI / 2}
/>
这是普通实现,但 API 是相同的。
我正在尝试创建一种情况,其中相机是固定的,您可以通过拖动鼠标围绕 y 轴或轴旋转视图。
类似于 threejs.org/examples/?q=panorama#webgl_panorama_cube 的东西。但我应该能够在一个对象内进行操作。
我尝试使用 drei,但只能使用 PointLockControls 和 OrbitControls 成功,这两者都没有帮助,因为您无法使用 PointLockControls 启用光标,也无法使用轨道控件固定相机位置。
codesandbox 中的一个小例子会非常有用。非常感谢!
该示例使用 OrbitControls
and keeps the camera in place by disabling zoom and panning. You can also restrict rotation to the Y axis by setting its min and max polar angles.
Drei's OrbitControls 接受属性,您可以在其中直接设置这些选项。
<OrbitControls
enableZoom={false}
enablePan={false}
minPolarAngle={Math.PI / 2}
maxPolarAngle={Math.PI / 2}
/>
这是普通实现,但 API 是相同的。