4个版本 (2个破坏性更新)
0.3.0 | 2023年8月26日 |
---|---|
0.2.0 | 2023年8月26日 |
0.1.1 | 2023年2月12日 |
0.1.0 | 2023年2月12日 |
#1845 in 游戏开发
每月24次下载
31KB
297 行
Bevy Debug Camera
这个库提供了一种简单轻量级的方法,可以在调试3D bevy游戏时拥有“飞行相机”风格的相机。它是可配置的,让您能够轻松地使用组件和资源在本地为相机启用系统或全局启用所有相机。
Bevy兼容性
Bevy版本 | bevy-debug-camera版本 |
---|---|
0.9.1 | ^0.1.0 |
^0.10.0 | ^0.2.0 |
^0.11.0 | ^0.3.0 |
示例
您可以在示例文件夹中查看此crate的实际应用,但要开始,您可以在设置应用程序时执行以下操作
use bevy::prelude::*;
use bevy_debug_camera::{DebugCamera, DebugCameraPlugin};
fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugin(DebugCameraPlugin::default())
.add_startup_system(setup)
.run();
}
fn setup(mut commands: Commands) {
// ... other setup code
commands
.spawn(Camera3dBundle::default())
.insert(DebugCamera {
position: Vec3::new(-5., 1., 0.),
..default()
});
}
绑定
默认绑定如下
鼠标 + 键盘
动作 | 绑定 |
---|---|
向前移动 | W |
向后移动 | S |
向左移动 | A |
向右移动 | D |
向上移动 | Lshift |
向下移动 | Space |
偏航 | 鼠标X |
俯仰 | 鼠标Y |
向左翻滚 | Q |
向右翻滚 | E |
控制器
动作 | 绑定 |
---|---|
前进/后退 | Lstick Y |
左右移动 | Lstick X |
向上移动 | RTrigger |
向下移动 | LTrigger |
偏航 | Rstick X |
俯仰 | Lstick Y |
向左翻滚 | LBumper |
向右翻滚 | RBumper |
配置插件
该插件提供了一些配置选项,您可以在启动时设置以自定义正在使用的相机的行为。您可以配置
- 键盘绑定
- 游戏手柄绑定
- 接受的输入
所有这些自定义都公开为资源,这些资源在运行时会持续读取,并且可以在运行时修改。下面是一个使用所有配置选项的示例,以及configuration
示例
use bevy::prelude::*;
use bevy_debug_camera::{
DebugCamera, DebugCameraPlugin, GamepadBindings, KeyboardBindings, DebugCameraActive,
};
fn main() {
App::new()
.add_plugins(DefaultPlugins)
// Each field in `DebugCameraPlugin` can be set directly or picked up from
// default.
.add_plugin(DebugCameraPlugin {
gamepad_bindings: GamepadBindings {
// Overrides only the roll buttons
roll_left: GamepadButtonType::West,
roll_right: GamepadButtonType::East,
..default()
},
keyboard_bindings: KeyboardBindings {
// Override WASD with arrows
fwd: KeyCode::Up,
bwd: KeyCode::Down,
left: KeyCode::Left,
right: KeyCode::Right,
..default()
},
debug_camera_active: DebugCameraActive {
// Disable keyboard + mouse only
keymouse: false,
..default()
},
})
.add_startup_system(setup)
.run();
}
fn setup() {
// Setup logic here...
}
依赖关系
~18-28MB
~417K SLoC