Cargo Features
[dependencies]
bevy = { version = "0.17.1", default-features = false, features = ["default_no_std", "bevy_mesh_picking_backend", "bevy_sprite_picking_backend", "bevy_ui_picking_backend", "bevy_ui_debug", "dynamic_linking", "sysinfo_plugin", "bevy_animation", "bevy_asset", "bevy_audio", "bevy_color", "bevy_core_pipeline", "bevy_post_process", "bevy_anti_alias", "bevy_gilrs", "bevy_gltf", "bevy_pbr", "bevy_picking", "bevy_render", "bevy_scene", "bevy_solari", "bevy_sprite", "bevy_sprite_render", "bevy_text", "bevy_ui", "bevy_ui_render", "bevy_window", "bevy_winit", "bevy_image", "bevy_mesh", "bevy_camera", "bevy_light", "bevy_shader", "bevy_gizmos", "bevy_dev_tools", "bevy_remote", "bevy_log", "bevy_input_focus", "experimental_bevy_ui_widgets", "experimental_bevy_feathers", "spirv_shader_passthrough", "statically-linked-dxc", "raw_vulkan_init", "trace_chrome", "trace_tracy", "trace_tracy_memory", "trace", "basis-universal", "compressed_image_saver", "bmp", "dds", "exr", "ff", "gif", "hdr", "ktx2", "ico", "jpeg", "png", "pnm", "qoi", "tga", "tiff", "webp", "zlib", "zstd_rust", "zstd_c", "flac", "mp3", "vorbis", "wav", "symphonia-aac", "symphonia-all", "symphonia-flac", "symphonia-isomp4", "symphonia-vorbis", "symphonia-wav", "serialize", "multi_threaded", "async-io", "wayland", "x11", "android-native-activity", "android-game-activity", "bevy_ci_testing", "animation", "android_shared_stdcxx", "detailed_trace", "tonemapping_luts", "smaa_luts", "bluenoise_texture", "dlss", "force_disable_dlss", "accesskit_unix", "glam_assert", "debug_glam_assert", "default_font", "shader_format_glsl", "shader_format_spirv", "shader_format_wesl", "pbr_transmission_textures", "pbr_clustered_decals", "pbr_light_textures", "pbr_multi_layer_material_textures", "pbr_anisotropy_texture", "experimental_pbr_pcss", "pbr_specular_textures", "webgl2", "webgpu", "asset_processor", "file_watcher", "embedded_watcher", "http", "https", "web_asset_cache", "bevy_debug_stepping", "meshlet", "meshlet_processor", "bevy_state", "track_location", "reflect_functions", "reflect_documentation", "reflect_auto_register", "reflect_auto_register_static", "custom_cursor", "ghost_nodes", "async_executor", "std", "critical-section", "libm", "web", "hotpatching", "debug"] }
- default = android-game-activity, android_shared_stdcxx, animation, async_executor, bevy_anti_alias, bevy_asset, bevy_audio, bevy_camera, bevy_color, bevy_core_pipeline, bevy_gilrs, bevy_gizmos, bevy_gltf, bevy_image, bevy_input_focus, bevy_light, bevy_log, bevy_mesh, bevy_mesh_picking_backend, bevy_pbr, bevy_picking, bevy_post_process, bevy_render, bevy_scene, bevy_shader, bevy_sprite, bevy_sprite_picking_backend, bevy_sprite_render, bevy_state, bevy_text, bevy_ui, bevy_ui_picking_backend, bevy_ui_render, bevy_window, bevy_winit, custom_cursor, debug, default_font, hdr, ktx2, multi_threaded, png, reflect_auto_register, smaa_luts, std, sysinfo_plugin, tonemapping_luts, vorbis, wayland, webgl2, x11, zstd_rust
-
These default features are set whenever
bevy
is added without
somewhere in the dependency tree.default-features = false - default_no_std = bevy_color, bevy_state, critical-section, libm
-
Recommended defaults for no_std applications
- bevy_mesh_picking_backend default
-
Provides an implementation for picking meshes
Enables bevy_mesh_picking_backend of bevy_internal
- bevy_sprite_picking_backend default
-
Provides an implementation for picking sprites
Enables bevy_sprite_picking_backend of bevy_internal
- bevy_ui_picking_backend default
-
Provides an implementation for picking UI
Enables bevy_ui_picking_backend of bevy_internal
- bevy_ui_debug
-
Provides a debug overlay for bevy UI
Enables bevy_ui_debug of bevy_internal
- dynamic_linking
-
Force dynamic linking, which improves iterative compile times
Enables bevy_dylib, dynamic_linking of bevy_internal
- sysinfo_plugin default
-
Enables system information diagnostic plugin
Enables sysinfo_plugin of bevy_internal
- bevy_animation animation
-
Provides animation functionality
Enables bevy_animation of bevy_internal
- bevy_asset default
-
Provides asset functionality
Enables bevy_asset of bevy_internal
- bevy_audio default
-
Provides audio functionality
Enables bevy_audio of bevy_internal
- bevy_color default default_no_std?
-
Provides shared color types and operations
Enables bevy_color of bevy_internal
- bevy_core_pipeline default
-
Provides cameras and other basic render pipeline features
Enables bevy_core_pipeline of bevy_internal
- bevy_post_process default
-
Provides post process effects such as depth of field, bloom, chromatic aberration.
Enables bevy_post_process of bevy_internal
- bevy_anti_alias default
-
Provides various anti aliasing solutions
Enables bevy_anti_alias of bevy_internal
- bevy_gilrs default
-
Adds gamepad support
Enables bevy_gilrs of bevy_internal
- bevy_gltf default
-
glTF support
Enables bevy_gltf of bevy_internal
- bevy_pbr default
-
Adds PBR rendering
Enables bevy_pbr of bevy_internal
- bevy_picking default
-
Provides picking functionality
Enables bevy_picking of bevy_internal
- bevy_render default
-
Provides rendering functionality
Enables bevy_render of bevy_internal
- bevy_scene default
-
Provides scene functionality
Enables bevy_scene of bevy_internal
- bevy_solari
-
Provides raytraced lighting (experimental)
Enables bevy_solari of bevy_internal
- bevy_sprite default
-
Provides sprite functionality
Enables bevy_sprite of bevy_internal
- bevy_sprite_render default
-
Provides sprite rendering functionality
Enables bevy_sprite_render of bevy_internal
- bevy_text default
-
Provides text functionality
Enables bevy_text of bevy_internal
- bevy_ui default
-
A custom ECS-driven UI framework
Enables bevy_ui of bevy_internal
- bevy_ui_render default
-
Provides rendering functionality for bevy_ui
Enables bevy_ui_render of bevy_internal
- bevy_window default
-
Windowing layer
Enables bevy_window of bevy_internal
- bevy_winit default
-
winit window and input backend
Enables bevy_winit of bevy_internal
- bevy_image default
-
Load and access image data. Usually added by an image format
Enables bevy_image of bevy_internal
- bevy_mesh default
-
Provides a mesh format and some primitive meshing routines.
Enables bevy_mesh of bevy_internal
- bevy_camera default
-
Provides camera and visibility types, as well as culling primitives.
Enables bevy_camera of bevy_internal
- bevy_light default
-
Provides light types such as point lights, directional lights, spotlights.
Enables bevy_light of bevy_internal
- bevy_shader default
-
Provides shaders usable through asset handles.
Enables bevy_shader of bevy_internal
- bevy_gizmos default
-
Adds support for rendering gizmos
Enables bevy_gizmos of bevy_internal
- bevy_dev_tools
-
Provides a collection of developer tools
Enables bevy_dev_tools of bevy_internal
- bevy_remote
-
Enable the Bevy Remote Protocol
Enables bevy_remote of bevy_internal
- bevy_log default
-
Enable integration with
tracing
andlog
Enables bevy_log of bevy_internal
- bevy_input_focus default
-
Enable input focus subsystem
Enables bevy_input_focus of bevy_internal
- experimental_bevy_ui_widgets experimental_bevy_feathers?
-
Experimental headless widget collection for Bevy UI.
Enables bevy_ui_widgets of bevy_internal
- experimental_bevy_feathers = experimental_bevy_ui_widgets
-
Feathers widget collection.
Enables bevy_feathers of bevy_internal
- spirv_shader_passthrough
-
Enable passthrough loading for SPIR-V shaders (Only supported on Vulkan, shader capabilities and extensions must agree with the platform implementation)
Enables spirv_shader_passthrough of bevy_internal
- statically-linked-dxc
-
Statically linked DXC shader compiler for DirectX 12
Enables statically-linked-dxc of bevy_internal
- raw_vulkan_init
-
Forces the wgpu instance to be initialized using the raw Vulkan HAL, enabling additional configuration
Enables raw_vulkan_init of bevy_internal
- trace_chrome = trace
-
Tracing support, saving a file in Chrome Tracing format
Enables trace_chrome of bevy_internal
- trace_tracy = trace
-
Tracing support, exposing a port for Tracy
Enables trace_tracy of bevy_internal
- trace_tracy_memory
-
Tracing support, with memory profiling, exposing a port for Tracy
Enables trace_tracy_memory of bevy_internal
- trace trace_chrome? trace_tracy?
-
Tracing support
Enables tracing, trace of bevy_internal
- basis-universal
-
Basis Universal compressed texture support
Enables basis-universal of bevy_internal
- compressed_image_saver
-
Enables compressed KTX2 UASTC texture output on the asset processor
Enables compressed_image_saver of bevy_internal
- bmp
-
BMP image format support
Enables bmp of bevy_internal
- dds
-
DDS compressed texture support
Enables dds of bevy_internal
- exr
-
EXR image format support
Enables exr of bevy_internal
- ff
-
Farbfeld image format support
Enables ff of bevy_internal
- gif
-
GIF image format support
Enables gif of bevy_internal
- hdr default
-
HDR image format support
Enables hdr of bevy_internal
- ktx2 default
-
KTX2 compressed texture support
Enables ktx2 of bevy_internal
- ico
-
ICO image format support
Enables ico of bevy_internal
- jpeg
-
JPEG image format support
Enables jpeg of bevy_internal
- png default
-
PNG image format support
Enables png of bevy_internal
- pnm
-
PNM image format support, includes pam, pbm, pgm and ppm
Enables pnm of bevy_internal
- qoi
-
QOI image format support
Enables qoi of bevy_internal
- tga
-
TGA image format support
Enables tga of bevy_internal
- tiff
-
TIFF image format support
Enables tiff of bevy_internal
- webp
-
WebP image format support
Enables webp of bevy_internal
- zlib
-
For KTX2 supercompression
Enables zlib of bevy_internal
- zstd_rust default
-
For KTX2 Zstandard decompression using pure rust ruzstd. This is the safe default. For maximum performance, use "zstd_c".
Enables zstd_rust of bevy_internal
- zstd_c
-
For KTX2 Zstandard decompression using zstd. This is a faster backend, but uses unsafe C bindings. For the safe option, stick to the default backend with "zstd_rust".
Enables zstd_c of bevy_internal
- flac
-
FLAC audio format support
Enables flac of bevy_internal
- mp3
-
MP3 audio format support
Enables mp3 of bevy_internal
- vorbis default
-
OGG/VORBIS audio format support
Enables vorbis of bevy_internal
- wav
-
WAV audio format support
Enables wav of bevy_internal
- symphonia-aac
-
AAC audio format support (through symphonia)
Enables symphonia-aac of bevy_internal
- symphonia-all
-
AAC, FLAC, MP3, MP4, OGG/VORBIS, and WAV audio formats support (through symphonia)
Enables symphonia-all of bevy_internal
- symphonia-flac
-
FLAC audio format support (through symphonia)
Enables symphonia-flac of bevy_internal
- symphonia-isomp4
-
MP4 audio format support (through symphonia)
Enables symphonia-isomp4 of bevy_internal
- symphonia-vorbis
-
OGG/VORBIS audio format support (through symphonia)
Enables symphonia-vorbis of bevy_internal
- symphonia-wav
-
WAV audio format support (through symphonia)
Enables symphonia-wav of bevy_internal
- serialize
-
Enable serialization support through serde
Enables serialize of bevy_internal
- multi_threaded default
-
Enables multithreaded parallelism in the engine. Disabling it forces all engine tasks to run on a single thread.
Enables multi_threaded of bevy_internal
- async-io
-
Use async-io's implementation of block_on instead of futures-lite's implementation. This is preferred if your application uses async-io.
Enables async-io of bevy_internal
- wayland default
-
Wayland display server support
Enables wayland of bevy_internal
- x11 default
-
X11 display server support
Enables x11 of bevy_internal
- android-native-activity
-
Android NativeActivity support. Legacy, should be avoided for most new Android games.
Enables android-native-activity of bevy_internal
- android-game-activity default
-
Android GameActivity support. Default, choose between this and
android-native-activity
.Enables android-game-activity of bevy_internal
- bevy_ci_testing
-
Enable systems that allow for automated testing on CI
Enables bevy_ci_testing of bevy_internal
- animation default = bevy_animation
-
Enable animation support, and glTF animation loading
Enables animation of bevy_internal
-
Enable using a shared stdlib for cxx on Android
Enables android_shared_stdcxx of bevy_internal
- detailed_trace
-
Enable detailed trace event logging. These trace events are expensive even when off, thus they require compile time opt-in
Enables detailed_trace of bevy_internal
- tonemapping_luts default
-
Include tonemapping Look Up Tables KTX2 files. If everything is pink, you need to enable this feature or change the
Tonemapping
method for yourCamera2d
orCamera3d
.Enables tonemapping_luts of bevy_internal
- smaa_luts default
-
Include SMAA Look Up Tables KTX2 Files
Enables smaa_luts of bevy_internal
- bluenoise_texture
-
Include spatio-temporal blue noise KTX2 file used by generated environment maps, Solari and atmosphere
Enables bluenoise_texture of bevy_internal
- dlss
-
NVIDIA Deep Learning Super Sampling
Enables dlss of bevy_internal
- force_disable_dlss
-
Forcibly disable DLSS so that cargo build --all-features works without the DLSS SDK being installed. Not meant for users.
Enables force_disable_dlss of bevy_internal
- accesskit_unix
-
Enable AccessKit on Unix backends (currently only works with experimental screen readers and forks.)
Enables accesskit_unix of bevy_internal
- glam_assert
-
Enable assertions to check the validity of parameters passed to glam
Enables glam_assert of bevy_internal
- debug_glam_assert
-
Enable assertions in debug builds to check the validity of parameters passed to glam
Enables debug_glam_assert of bevy_internal
- default_font default
-
Include a default font, containing only ASCII characters, at the cost of a 20kB binary size increase
Enables default_font of bevy_internal
- shader_format_glsl
-
Enable support for shaders in GLSL
Enables shader_format_glsl of bevy_internal
- shader_format_spirv
-
Enable support for shaders in SPIR-V
Enables shader_format_spirv of bevy_internal
- shader_format_wesl
-
Enable support for shaders in WESL
Enables shader_format_wesl of bevy_internal
- pbr_transmission_textures
-
Enable support for transmission-related textures in the
StandardMaterial
, at the risk of blowing past the global, per-shader texture limit on older/lower-end GPUsEnables pbr_transmission_textures of bevy_internal
- pbr_clustered_decals
-
Enable support for Clustered Decals
Enables pbr_clustered_decals of bevy_internal
- pbr_light_textures
-
Enable support for Light Textures
Enables pbr_light_textures of bevy_internal
- pbr_multi_layer_material_textures
-
Enable support for multi-layer material textures in the
StandardMaterial
, at the risk of blowing past the global, per-shader texture limit on older/lower-end GPUsEnables pbr_multi_layer_material_textures of bevy_internal
- pbr_anisotropy_texture
-
Enable support for anisotropy texture in the
StandardMaterial
, at the risk of blowing past the global, per-shader texture limit on older/lower-end GPUsEnables pbr_anisotropy_texture of bevy_internal
- experimental_pbr_pcss
-
Enable support for PCSS, at the risk of blowing past the global, per-shader sampler limit on older/lower-end GPUs
Enables experimental_pbr_pcss of bevy_internal
- pbr_specular_textures
-
Enable support for specular textures in the
StandardMaterial
, at the risk of blowing past the global, per-shader texture limit on older/lower-end GPUsEnables pbr_specular_textures of bevy_internal
- webgl2 default
-
Enable some limitations to be able to use WebGL2. Please refer to the WebGL2 and WebGPU section of the examples README for more information on how to run Wasm builds with WebGPU.
Enables webgl of bevy_internal
- webgpu
-
Enable support for WebGPU in Wasm. When enabled, this feature will override the
webgl2
feature and you won't be able to run Wasm builds with WebGL2, only with WebGPU.Enables webgpu of bevy_internal
- asset_processor
-
Enables the built-in asset processor for processed assets.
Enables asset_processor of bevy_internal
- file_watcher
-
Enables watching the filesystem for Bevy Asset hot-reloading
Enables file_watcher of bevy_internal
- embedded_watcher
-
Enables watching in memory asset providers for Bevy Asset hot-reloading
Enables embedded_watcher of bevy_internal
- http
-
Enables downloading assets from HTTP sources. Warning: there are security implications. Read the docs on WebAssetPlugin.
Enables http of bevy_internal
- https
-
Enables downloading assets from HTTPS sources. Warning: there are security implications. Read the docs on WebAssetPlugin.
Enables https of bevy_internal
- web_asset_cache
-
Enable caching downloaded assets on the filesystem. NOTE: this cache currently never invalidates entries!
Enables web_asset_cache of bevy_internal
- bevy_debug_stepping
-
Enable stepping-based debugging of Bevy systems
Enables bevy_debug_stepping and debug of bevy_internal
- meshlet
-
Enables the meshlet renderer for dense high-poly scenes (experimental)
Enables meshlet of bevy_internal
- meshlet_processor
-
Enables processing meshes into meshlet meshes for bevy_pbr
Enables meshlet_processor of bevy_internal
- bevy_state default default_no_std?
-
Enable built in global state machines
Enables bevy_state of bevy_internal
- track_location
-
Enables source location tracking for change detection and spawning/despawning, which can assist with debugging
Enables track_location of bevy_internal
- reflect_functions
-
Enable function reflection
Enables reflect_functions of bevy_internal
- reflect_documentation
-
Enable documentation reflection
Enables reflect_documentation of bevy_internal
- reflect_auto_register default
-
Enable automatic reflect registration
Enables reflect_auto_register of bevy_internal
- reflect_auto_register_static
-
Enable automatic reflect registration without inventory. See
reflect::load_type_registrations
for more info.Enables reflect_auto_register_static of bevy_internal
- custom_cursor default
-
Enable winit custom cursor support
Enables custom_cursor of bevy_internal
- ghost_nodes
-
Experimental support for nodes that are ignored for UI layouting
Enables ghost_nodes of bevy_internal
- async_executor default = std
-
Uses
async-executor
as a task execution backend.Enables async_executor of bevy_internal
- std default async_executor
-
Allows access to the
std
crate.Enables std of bevy_internal
- critical-section default_no_std?
-
critical-section
provides the building blocks for synchronization primitives on all platforms, includingno_std
.Enables critical-section of bevy_internal
- libm default_no_std?
-
Uses the
libm
maths library instead of the one provided instd
andcore
.Enables libm of bevy_internal
- web
-
Enables use of browser APIs. Note this is currently only applicable on
wasm32
architectures.Enables web of bevy_internal
- hotpatching
-
Enable hotpatching of Bevy systems
Enables hotpatching of bevy_internal
- debug default
-
Enable collecting debug information about systems and components to help with diagnostics
Enables debug of bevy_internal