Crate wde

Crate wde 

Source
Expand description

WaterDropEngine - A modular game engine.

§Overview

WaterDropEngine is a modular game engine built on top of Bevy’s ECS. It provides a collection of plugins and tools. The engine is composed of several modules, organized from low-level to high-level:

  • High-Level:
  • Render:
    • wde_pbr: A plugin for physically based rendering (PBR) materials and lighting.
    • wde_camera: A plugin for managing cameras and viewports.
    • wde_camera_controller: A plugin for controlling cameras with various input methods.
    • wde_gltf: A plugin for loading and rendering glTF 3D models.
    • wde_gizmos: A plugin for rendering debug gizmos and visualizations.
  • Core:
    • wde_renderer: A plugin for rendering 3D graphics using the wgpu graphics API.
    • wde_scene: A plugin for managing scenes, entities, and components.
    • wde_editor: A plugin for creating in-game editors and tools.
  • Wrappers:
    • wde_wgpu: A wrapper around the wgpu graphics API for rendering. It is superseeded by wde_renderer.
    • wde_physics: A wrapper around the rapier physics engine for 3D physics simulation.
    • wde_logger: A wrapper around the tracing library for logging and diagnostics.
    • wde_egui: A wrapper around the egui library for creating user interfaces. It is superseeded by wde_editor.

§Getting Started

To get started with WaterDropEngine, add the wde crate to your Cargo.toml:

[dependencies]
wde = "0.1"

Then, in your main Rust file, you can use the default plugins to set up a basic application:

app.add_plugins(WdeDefaultPlugins);

To modify and configure individual plugins, use:

app.add_plugins(WdeDefaultPlugins.set(LogPlugin {
    level: LogLevel::DEBUG,
    ..Default::default()
}));

§Features

WaterDropEngine is designed to be modular and extensible. You can enable or disable features! using Cargo features. For example, to enable the pbr feature for physically based rendering, add the following to your Cargo.toml:

[dependencies]
wde = { version = "0.1", features = ["pbr"] }

Structs§

WdeDefaultPlugins
Default plugins for WaterDropEngine.