#camera #bevy #3d #gamedev #freecam

bevy_awesome_debug_camera

一款易于使用、可自定义的内置免费相机,适用于(出色的)bevy引擎

1 个不稳定版本

0.1.0 2024年7月6日

#1379游戏开发

每月 23 次下载

无许可证

34KB
291

Bevy调试相机

此存储库包含为使用Bevy游戏引擎构建的应用程序提供的自定义调试相机系统。此系统提供灵活且可配置的相机控制,包括移动、旋转和缩放,这对于调试和开发3D应用程序至关重要。

特性

  • 可自定义按键映射:使用可自定义的键位绑定移动相机。
  • 优雅的鼠标控制:使用垂直旋转限制和一致的向上旋转使用鼠标环视。
  • 鼠标滚轮缩放:使用鼠标滚轮放大和缩小。
  • 全面的游戏手柄支持:使用控制器而不是鼠标和键盘控制所有功能。
  • 光标捕获:允许在具有活动调试相机的窗口中进行光标捕获,以提高舒适度。
  • 相机本地选项覆盖:使用局部每相机覆盖替换全局选项资源。

用法

此存储库围绕DebugCamera组件,它将实现的功能暴露给任何添加到其中的相机。不过,大多数功能还需要用户将DebugCameraPlugin添加到应用程序中。

要开始,请查看示例。

使用自定义配置

此存储库的大多数功能都可以通过DebugCameraPlugin上的debug_camera_options字段进行彻底的自定义。所有可用选项都在DebugCameraOptions的文档中提供。

let debug_camera_options = DebugCameraOptions {
    // Update any configuration here!
    ..Default::default()
};

App::new()
    .add_plugins((DefaultPlugins, DebugCameraPlugin {
        debug_camera_options,
        ..Default::default()
    }))
    .run();

键位绑定

为了避免冲突,DebugCameraOptionsInputOptions没有预配置的键位绑定。您可以选择提供自定义的KeyBindings或使用预配置的实例。通过Default构建的KeyBindings是预配置的。您可以在下面的表中查看它们使用的键位映射。

动作 字段
向前移动 W forward
向后移动 S back
向左移动 A left
向右移动 D right
向上移动 Q up
向下移动 E down
提升 R global_up
下降 F global_down

Bevy版本兼容性

bevy版本 bevy_awesome_debug_camera 版本
0.14 0.1

贡献

欢迎贡献!请随时打开一个问题或提交一个拉取请求。

依赖项

约22MB
约403K SLoC