34个版本 (18个重大变更)
0.19.2 | 2024年8月15日 |
---|---|
0.19.1 | 2024年7月9日 |
0.18.2 | 2024年5月24日 |
0.17.0 | 2024年3月25日 |
0.6.1 | 2023年7月14日 |
#29 in 游戏开发
每月 1,578次下载
用于 21 个包 (直接使用 19 个)
56KB
847 行
Bevy Pan/Orbit Camera
摘要
Bevy Pan/Orbit Camera为Bevy引擎提供环绕相机控制,注重简单性和灵活性。可用于快速原型设计、实验、模型查看等!
功能
- 平滑环绕、平移和缩放
- 除了透视投影外,还与正交相机投影一起工作
- 可定制的控制、灵敏度和更多
- 触摸支持
- 与多个视图或窗口一起工作
- 易于手动控制,例如键盘控制或动画
- 可以控制渲染到纹理的相机
控制
默认鼠标控制
- 左键鼠标 - 环绕
- 右键鼠标 - 平移
- 滚轮 - 缩放
默认触摸控制
- 一只手指 - 环绕
- 两只手指 - 平移
- 捏合 - 缩放
快速入门
添加插件
.add_plugins(PanOrbitCameraPlugin)
将 PanOrbitCamera
添加到相机
commands.spawn((
Camera3dBundle {
transform: Transform::from_translation(Vec3::new(0.0, 1.5, 5.0)),
..default()
},
PanOrbitCamera::default(),
));
这将设置一个具有良好默认设置的相机。
查看高级示例 以查看所有可能的配置选项。
Cargo功能
bevy_egui
(可选): 使PanOrbitCamera
忽略egui
使用的任何输入,从而防止在交互式egui窗口时移动相机
版本兼容性
bevy | bevy_panorbit_camera |
---|---|
0.14 | 0.19 |
0.13 | 0.14-0.18 |
0.12 | 0.9-0.13 |
0.11 | 0.6-0.8 |
0.10 | 0.1-0.5 |
致谢
- Bevy作弊手册:为我提供了一个起点示例
- babylon.js:我参考了他们的弧形旋转相机的一些功能
- bevy_pancam:为egui功能提供想法
许可证
此存储库中的所有代码都根据以下任一许可证双许可:
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
- Apache许可证版本2.0(LICENSE-APACHE或http://www.apache.org/licenses/LICENSE-2.0)
由您选择。这意味着您可以选择您喜欢的许可证!这种双重许可证方法在Rust生态系统中是事实上的标准,并且包含非常好的理由。
依赖项
~35–72MB
~1.5M SLoC