#camera-control #camera #bevy #orbit #gamedev #game-engine

bevy_panorbit_camera

Bevy中的基本平移和环绕相机

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 游戏开发

Download history 362/week @ 2024-05-03 274/week @ 2024-05-10 505/week @ 2024-05-17 580/week @ 2024-05-24 346/week @ 2024-05-31 286/week @ 2024-06-07 336/week @ 2024-06-14 330/week @ 2024-06-21 158/week @ 2024-06-28 534/week @ 2024-07-05 404/week @ 2024-07-12 340/week @ 2024-07-19 397/week @ 2024-07-26 332/week @ 2024-08-02 403/week @ 2024-08-09 415/week @ 2024-08-16

每月 1,578次下载
用于 21 个包 (直接使用 19 个)

MIT/Apache

56KB
847

Crates.io docs.rs Bevy tracking

Bevy Pan/Orbit Camera

A screen recording showing camera movement

摘要

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

致谢

许可证

此存储库中的所有代码都根据以下任一许可证双许可:

由您选择。这意味着您可以选择您喜欢的许可证!这种双重许可证方法在Rust生态系统中是事实上的标准,并且包含非常好的理由

依赖项

~35–72MB
~1.5M SLoC