Cargo Features

[dependencies]
lightyear_examples_common = { version = "0.25.5", default-features = false, features = ["client", "server", "netcode", "udp", "steam", "visualizer", "debug", "gui", "bevy_egui"] }
default = client, netcode, server, udp

These default features are set whenever lightyear_examples_common is added without default-features = false somewhere in the dependency tree.

client default

Enables client of lightyear

lightyear:

enable client plugins

Affects lightyear_examples_common::client, lightyear_examples_common::client_renderer

server default

Enables server of lightyear

lightyear:

enable server plugins and server-only features

Affects lightyear_examples_common::server, lightyear_examples_common::server_renderer

netcode default

Enables netcode of lightyear

lightyear:

Enables netcode to provide persistent IDs to clients

udp default

Enables lightyear

lightyear:

IO LAYERS
Enables UDP as an IO layer

steam

Enables steam of lightyear

lightyear:

CONNECTION LAYERS
Enables Steam as a connection layer

visualizer = gui

Enables bevy_metrics_dashboard, metrics of lightyear

debug = gui

Enables metrics of lightyear

lightyear:

enable metrics collection (via metrics crate)

gui debug? visualizer?

this serves as a bit of "workspace-hack" crate by enabling all bevy features needed by examples. you can read about workspace-hack crates here: https://docs.rs/cargo-hakari/latest/cargo_hakari/about/index.html even though we're not using cargo-hakari.

Enables bevy-inspector-egui, bevy_core_pipeline, bevy_gizmos, bevy_pbr, bevy_picking, bevy_render, bevy_scene, bevy_sprite, bevy_sprite_render, bevy_text, bevy_ui, bevy_ui_picking_backend, bevy_ui_render, bevy_window, bevy_winit, default_font, hdr, png, smaa_luts, tonemapping_luts, webgl2 and x11 of bevy

Affects cli::window_plugin, cli::new_gui_app, lightyear_examples_common::client_renderer, lightyear_examples_common::server_renderer

Features from optional dependencies

bevy_egui implicit feature

Enables bevy_egui

bevy_egui:

A plugin for Egui integration into Bevy