# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.70.0"
name = "bevy"
version = "0.11.3"
exclude = [
    "assets/",
    "tools/",
    ".github/",
    "crates/",
    "examples/wasm/assets/",
]
description = "A refreshingly simple data-driven game engine and app framework"
homepage = "https://bevyengine.org"
readme = "README.md"
keywords = [
    "game",
    "engine",
    "gamedev",
    "graphics",
    "bevy",
]
categories = [
    "game-engines",
    "graphics",
    "gui",
    "rendering",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/bevyengine/bevy"

[[package.metadata.example_category]]
description = """
These examples demonstrate how to implement different shaders in user code.

A shader in its most common usage is a small program that is run by the GPU per-vertex in a mesh (a vertex shader) or per-affected-screen-fragment (a fragment shader.) The GPU executes these programs in a highly parallel way.

There are also compute shaders which are used for more general processing leveraging the GPU's parallelism.
"""
name = "Shaders"

[[package.metadata.example_category]]
description = """
These examples are used to test the performance and stability of various parts of the engine in an isolated way.

Due to the focus on performance it's recommended to run the stress tests in release mode:

```sh
cargo run --release --example <example name>
```
"""
name = "Stress Tests"

[package.metadata.docs.rs]
cargo-args = [
    "-Zunstable-options",
    "-Zrustdoc-scrape-examples",
]

[package.metadata.example.2d_gizmos]
category = "2D Rendering"
description = "A scene showcasing 2D gizmos"
name = "2D Gizmos"
wasm = true

[package.metadata.example.2d_shapes]
category = "2D Rendering"
description = "Renders a rectangle, circle, and hexagon"
name = "2D Shapes"
wasm = true

[package.metadata.example.3d_gizmos]
category = "3D Rendering"
description = "A scene showcasing 3D gizmos"
name = "3D Gizmos"
wasm = true

[package.metadata.example.3d_rotation]
category = "Transforms"
description = "Illustrates how to (constantly) rotate an object around an axis"
name = "3D Rotation"
wasm = true

[package.metadata.example.3d_scene]
category = "3D Rendering"
description = "Simple 3D scene with basic shapes and lighting"
name = "3D Scene"
wasm = true

[package.metadata.example.3d_shapes]
category = "3D Rendering"
description = "A scene showcasing the built-in 3D shapes"
name = "3D Shapes"
wasm = true

[package.metadata.example.alien_cake_addict]
category = "Games"
description = "Eat the cakes. Eat them all. An example 3D game"
name = "Alien Cake Addict"
wasm = true

[package.metadata.example.animate_shader]
category = "Shaders"
description = "A shader that uses dynamic data like the time since startup"
name = "Animated"
wasm = true

[package.metadata.example.animated_fox]
category = "Animation"
description = "Plays an animation from a skinned glTF"
name = "Animated Fox"
wasm = true

[package.metadata.example.animated_transform]
category = "Animation"
description = "Create and play an animation defined by code that operates on the `Transform` component"
name = "Animated Transform"
wasm = true

[package.metadata.example.anti_aliasing]
category = "3D Rendering"
description = "Compares different anti-aliasing methods"
name = "Anti-aliasing"
wasm = false

[package.metadata.example.apply_deferred]
category = "ECS (Entity Component System)"
description = "Show how to use `apply_deferred` system"
name = "Apply System Buffers"
wasm = false

[package.metadata.example.array_texture]
category = "Shaders"
description = "A shader that shows how to reuse the core bevy PBR shading functionality in a custom material that obtains the base color from an array texture."
name = "Array Texture"
wasm = true

[package.metadata.example.asset_loading]
category = "Assets"
description = "Demonstrates various methods to load assets"
name = "Asset Loading"
wasm = false

[package.metadata.example.async_compute]
category = "Async Tasks"
description = "How to use `AsyncComputeTaskPool` to complete longer running tasks"
name = "Async Compute"
wasm = false

[package.metadata.example.atmospheric_fog]
category = "3D Rendering"
description = "A scene showcasing the atmospheric fog effect"
name = "Atmospheric Fog"
wasm = true

[package.metadata.example.audio]
category = "Audio"
description = "Shows how to load and play an audio file"
name = "Audio"
wasm = true

[package.metadata.example.audio_control]
category = "Audio"
description = "Shows how to load and play an audio file, and control how it's played"
name = "Audio Control"
wasm = true

[package.metadata.example.bevymark]
category = "Stress Tests"
description = "A heavy sprite rendering workload to benchmark your system with Bevy"
name = "Bevymark"
wasm = true

[package.metadata.example.blend_modes]
category = "3D Rendering"
description = "Showcases different blend modes"
name = "Blend Modes"
wasm = true

[package.metadata.example.bloom_2d]
category = "2D Rendering"
description = "Illustrates bloom post-processing in 2d"
name = "2D Bloom"
wasm = true

[package.metadata.example.bloom_3d]
category = "3D Rendering"
description = "Illustrates bloom configuration using HDR and emissive materials"
name = "3D Bloom"
wasm = true

[package.metadata.example.borders]
category = "UI (User Interface)"
description = "Demonstrates how to create a node with a border"
name = "Borders"
wasm = true

[package.metadata.example.breakout]
category = "Games"
description = "An implementation of the classic game \"Breakout\""
name = "Breakout"
wasm = true

[package.metadata.example.button]
category = "UI (User Interface)"
description = "Illustrates creating and updating a button"
name = "Button"
wasm = true

[package.metadata.example.char_input_events]
category = "Input"
description = "Prints out all chars as they are inputted"
name = "Char Input Events"
wasm = false

[package.metadata.example.clear_color]
category = "Window"
description = "Creates a solid color window"
name = "Clear Color"
wasm = true

[package.metadata.example.component_change_detection]
category = "ECS (Entity Component System)"
description = "Change detection on components"
name = "Component Change Detection"
wasm = false

[package.metadata.example.compute_shader_game_of_life]
category = "Shaders"
description = "A compute shader that simulates Conway's Game of Life"
name = "Compute - Game of Life"
wasm = false

[package.metadata.example.contributors]
category = "Games"
description = "Displays each contributor as a bouncy bevy-ball!"
name = "Contributors"
wasm = true

[package.metadata.example.cubic_curve]
category = "Animation"
description = "Bezier curve example showing a cube following a cubic curve"
name = "Cubic Curve"
wasm = true

[package.metadata.example.custom_asset]
category = "Assets"
description = "Implements a custom asset loader"
name = "Custom Asset"
wasm = true

[package.metadata.example.custom_asset_io]
category = "Assets"
description = "Implements a custom asset io loader"
name = "Custom Asset IO"
wasm = true

[package.metadata.example.custom_diagnostic]
category = "Diagnostics"
description = "Shows how to create a custom diagnostic"
name = "Custom Diagnostic"
wasm = true

[package.metadata.example.custom_gltf_vertex_attribute]
category = "2D Rendering"
description = "Renders a glTF mesh in 2D with a custom vertex attribute"
name = "Custom glTF vertex attribute 2D"
wasm = true

[package.metadata.example.custom_loop]
category = "Application"
description = "Demonstrates how to create a custom runner (to update an app manually)"
name = "Custom Loop"
wasm = false

[package.metadata.example.custom_query_param]
category = "ECS (Entity Component System)"
description = "Groups commonly used compound queries and query filters into a single type"
name = "Custom Query Parameters"
wasm = false

[package.metadata.example.custom_skinned_mesh]
category = "Animation"
description = "Skinned mesh example with mesh and joints data defined in code"
name = "Custom Skinned Mesh"
wasm = true

[package.metadata.example.custom_vertex_attribute]
category = "Shaders"
description = "A shader that reads a mesh's custom vertex attribute"
name = "Custom Vertex Attribute"
wasm = true

[package.metadata.example.decodable]
category = "Audio"
description = "Shows how to create and register a custom audio source by implementing the `Decodable` type."
name = "Decodable"
wasm = true

[package.metadata.example.display_and_visibility]
category = "UI (User Interface)"
description = "Demonstrates how Display and Visibility work in the UI."
name = "Display and Visibility"
wasm = true

[package.metadata.example.drag_and_drop]
category = "Application"
description = "An example that shows how to handle drag and drop in an app"
name = "Drag and Drop"
wasm = false

[package.metadata.example.ecs_guide]
category = "ECS (Entity Component System)"
description = "Full guide to Bevy's ECS"
name = "ECS Guide"
wasm = false

[package.metadata.example.empty]
category = "Application"
description = "An empty application (does nothing)"
name = "Empty"
wasm = false

[package.metadata.example.empty_defaults]
category = "Application"
description = "An empty application with default plugins"
name = "Empty with Defaults"
wasm = true

[package.metadata.example.event]
category = "ECS (Entity Component System)"
description = "Illustrates event creation, activation, and reception"
name = "Event"
wasm = false

[package.metadata.example.external_source_external_thread]
category = "Async Tasks"
description = "How to use an external thread to run an infinite task and communicate with a channel"
name = "External Source of Data on an External Thread"
wasm = false

[package.metadata.example.fallback_image]
hidden = true

[package.metadata.example.fixed_timestep]
category = "ECS (Entity Component System)"
description = "Shows how to create systems that run every fixed timestep, rather than every tick"
name = "Fixed Timestep"
wasm = false

[package.metadata.example.flex_layout]
category = "UI (User Interface)"
description = "Demonstrates how the AlignItems and JustifyContent properties can be composed to layout nodes and position text"
name = "Flex Layout"
wasm = true

[package.metadata.example.fog]
category = "3D Rendering"
description = "A scene showcasing the distance fog effect"
name = "Fog"
wasm = true

[package.metadata.example.font_atlas_debug]
category = "UI (User Interface)"
description = "Illustrates how FontAtlases are populated (used to optimize text rendering internally)"
name = "Font Atlas Debug"
wasm = true

[package.metadata.example.game_menu]
category = "Games"
description = "A simple game menu"
name = "Game Menu"
wasm = true

[package.metadata.example.gamepad_input]
category = "Input"
description = "Shows handling of gamepad input, connections, and disconnections"
name = "Gamepad Input"
wasm = false

[package.metadata.example.gamepad_input_events]
category = "Input"
description = "Iterates and prints gamepad input and connection events"
name = "Gamepad Input Events"
wasm = false

[package.metadata.example.gamepad_rumble]
category = "Input"
description = "Shows how to rumble a gamepad using force feedback"
name = "Gamepad Rumble"
wasm = false

[package.metadata.example.gamepad_viewer]
category = "Tools"
description = "Shows a visualization of gamepad buttons, sticks, and triggers"
name = "Gamepad Viewer"
wasm = true

[package.metadata.example.generate_custom_mesh]
category = "3D Rendering"
description = "Simple showcase of how to generate a custom mesh with a custom texture"
name = "Generate Custom Mesh"
wasm = true

[package.metadata.example.generic_reflection]
category = "Reflection"
description = "Registers concrete instances of generic types that may be used with reflection"
name = "Generic Reflection"
wasm = false

[package.metadata.example.generic_system]
category = "ECS (Entity Component System)"
description = "Shows how to create systems that can be reused with different types"
name = "Generic System"
wasm = false

[package.metadata.example.gltf_skinned_mesh]
category = "Animation"
description = "Skinned mesh example with mesh and joints data loaded from a glTF file"
name = "glTF Skinned Mesh"
wasm = true

[package.metadata.example.grid]
category = "UI (User Interface)"
description = "An example for CSS Grid layout"
name = "CSS Grid"
wasm = true

[package.metadata.example.headless]
category = "Application"
description = "An application that runs without default plugins"
name = "Headless"
wasm = false

[package.metadata.example.hello_world]
hidden = true

[package.metadata.example.hierarchy]
category = "ECS (Entity Component System)"
description = "Creates a hierarchy of parents and children entities"
name = "Hierarchy"
wasm = false

[package.metadata.example.hot_asset_reloading]
category = "Assets"
description = "Demonstrates automatic reloading of assets when modified on disk"
name = "Hot Reloading of Assets"
wasm = true

[package.metadata.example.iter_combinations]
category = "ECS (Entity Component System)"
description = "Shows how to iterate over combinations of query results"
name = "Iter Combinations"
wasm = true

[package.metadata.example.keyboard_input]
category = "Input"
description = "Demonstrates handling a key press/release"
name = "Keyboard Input"
wasm = false

[package.metadata.example.keyboard_input_events]
category = "Input"
description = "Prints out all keyboard events"
name = "Keyboard Input Events"
wasm = false

[package.metadata.example.keyboard_modifiers]
category = "Input"
description = "Demonstrates using key modifiers (ctrl, shift)"
name = "Keyboard Modifiers"
wasm = false

[package.metadata.example.lighting]
category = "3D Rendering"
description = "Illustrates various lighting options in a simple scene"
name = "Lighting"
wasm = true

[package.metadata.example.lines]
category = "3D Rendering"
description = "Create a custom material to draw 3d lines"
name = "Lines"
wasm = true

[package.metadata.example.load_gltf]
category = "3D Rendering"
description = "Loads and renders a glTF file as a scene"
name = "Load glTF"
wasm = true

[package.metadata.example.log_diagnostics]
category = "Diagnostics"
description = "Add a plugin that logs diagnostics, like frames per second (FPS), to the console"
name = "Log Diagnostics"
wasm = true

[package.metadata.example.logs]
category = "Application"
description = "Illustrate how to use generate log output"
name = "Logs"
wasm = true

[package.metadata.example.low_power]
category = "Window"
description = "Demonstrates settings to reduce power use for bevy applications"
name = "Low Power"
wasm = true

[package.metadata.example.many_animated_sprites]
category = "Stress Tests"
description = "Displays many animated sprites in a grid arrangement with slight offsets to their animation timers. Used for performance testing."
name = "Many Animated Sprites"
wasm = true

[package.metadata.example.many_buttons]
category = "Stress Tests"
description = "Test rendering of many UI elements"
name = "Many Buttons"
wasm = true

[package.metadata.example.many_cubes]
category = "Stress Tests"
description = "Simple benchmark to test per-entity draw overhead. Run with the `sphere` argument to test frustum culling"
name = "Many Cubes"
wasm = true

[package.metadata.example.many_foxes]
category = "Stress Tests"
description = "Loads an animated fox model and spawns lots of them. Good for testing skinned mesh performance. Takes an unsigned integer argument for the number of foxes to spawn. Defaults to 1000"
name = "Many Foxes"
wasm = true

[package.metadata.example.many_gizmos]
category = "Stress Tests"
description = "Test rendering of many gizmos"
name = "Many Gizmos"
wasm = true

[package.metadata.example.many_glyphs]
category = "Stress Tests"
description = "Simple benchmark to test text rendering."
name = "Many Glyphs"
wasm = true

[package.metadata.example.many_lights]
category = "Stress Tests"
description = "Simple benchmark to test rendering many point lights. Run with `WGPU_SETTINGS_PRIO=webgl2` to restrict to uniform buffers and max 256 lights"
name = "Many Lights"
wasm = true

[package.metadata.example.many_sprites]
category = "Stress Tests"
description = "Displays many sprites in a grid arrangement! Used for performance testing. Use `--colored` to enable color tinted sprites."
name = "Many Sprites"
wasm = true

[package.metadata.example.mesh2d]
category = "2D Rendering"
description = "Renders a 2d mesh"
name = "Mesh 2D"
wasm = true

[package.metadata.example.mesh2d_manual]
category = "2D Rendering"
description = "Renders a custom mesh \"manually\" with \"mid-level\" renderer apis"
name = "Manual Mesh 2D"
wasm = true

[package.metadata.example.mesh2d_vertex_color_texture]
category = "2D Rendering"
description = "Renders a 2d mesh with vertex color attributes"
name = "Mesh 2D With Vertex Colors"
wasm = true

[package.metadata.example.minimising]
hidden = true

[package.metadata.example.morph_targets]
category = "Animation"
description = "Plays an animation from a glTF file with meshes with morph targets"
name = "Morph Targets"
wasm = true

[package.metadata.example.mouse_grab]
category = "Input"
description = "Demonstrates how to grab the mouse, locking the cursor to the app's screen"
name = "Mouse Grab"
wasm = false

[package.metadata.example.mouse_input]
category = "Input"
description = "Demonstrates handling a mouse button press/release"
name = "Mouse Input"
wasm = false

[package.metadata.example.mouse_input_events]
category = "Input"
description = "Prints out all mouse events (buttons, movement, etc.)"
name = "Mouse Input Events"
wasm = false

[package.metadata.example.move_sprite]
category = "2D Rendering"
description = "Changes the transform of a sprite"
name = "Move Sprite"
wasm = true

[package.metadata.example.multiple_windows]
category = "Window"
description = "Demonstrates creating multiple windows, and rendering to them"
name = "Multiple Windows"
wasm = false

[package.metadata.example.no_prepass]
hidden = true

[package.metadata.example.no_renderer]
category = "Application"
description = "An application that runs with default plugins and displays an empty window, but without an actual renderer"
name = "No Renderer"
wasm = false

[package.metadata.example.nondeterministic_system_order]
category = "ECS (Entity Component System)"
description = "Systems run in parallel, but their order isn't always deterministic. Here's how to detect and fix this."
name = "Nondeterministic System Order"
wasm = false

[package.metadata.example.orthographic]
category = "3D Rendering"
description = "Shows how to create a 3D orthographic view (for isometric-look in games or CAD applications)"
name = "Orthographic View"
wasm = true

[package.metadata.example.overflow]
category = "UI (User Interface)"
description = "Simple example demonstrating overflow behavior"
name = "Overflow"
wasm = true

[package.metadata.example.overflow_debug]
category = "UI (User Interface)"
description = "An example to debug overflow and clipping behavior"
name = "Overflow and Clipping Debug"
wasm = true

[package.metadata.example.parallax_mapping]
category = "3D Rendering"
description = "Demonstrates use of a normal map and depth map for parallax mapping"
name = "Parallax Mapping"
wasm = true

[package.metadata.example.parallel_query]
category = "ECS (Entity Component System)"
description = "Illustrates parallel queries with `ParallelIterator`"
name = "Parallel Query"
wasm = false

[package.metadata.example.parenting]
category = "3D Rendering"
description = "Demonstrates parent->child relationships and relative transformations"
name = "Parenting"
wasm = true

[package.metadata.example.pbr]
category = "3D Rendering"
description = "Demonstrates use of Physically Based Rendering (PBR) properties"
name = "Physically Based Rendering"
wasm = true

[package.metadata.example.pixel_perfect]
category = "2D Rendering"
description = "Demonstrates pixel perfect in 2d"
name = "Pixel Perfect"
wasm = true

[package.metadata.example.plugin]
category = "Application"
description = "Demonstrates the creation and registration of a custom plugin"
name = "Plugin"
wasm = true

[package.metadata.example.plugin_group]
category = "Application"
description = "Demonstrates the creation and registration of a custom plugin group"
name = "Plugin Group"
wasm = true

[package.metadata.example.post_processing]
category = "Shaders"
description = "A custom post processing effect, using a custom render pass that runs after the main pass"
name = "Post Processing - Custom Render Pass"
wasm = true

[package.metadata.example.reflection]
category = "Reflection"
description = "Demonstrates how reflection in Bevy provides a way to dynamically interact with Rust types"
name = "Reflection"
wasm = false

[package.metadata.example.reflection_types]
category = "Reflection"
description = "Illustrates the various reflection types available"
name = "Reflection Types"
wasm = false

[package.metadata.example.relative_cursor_position]
category = "UI (User Interface)"
description = "Showcases the RelativeCursorPosition component"
name = "Relative Cursor Position"
wasm = true

[package.metadata.example.removal_detection]
category = "ECS (Entity Component System)"
description = "Query for entities that had a specific component removed earlier in the current frame"
name = "Removal Detection"
wasm = false

[package.metadata.example.render_to_texture]
category = "3D Rendering"
description = "Shows how to render to a texture, useful for mirrors, UI, or exporting images"
name = "Render to Texture"
wasm = true

[package.metadata.example.resizing]
hidden = true

[package.metadata.example.return_after_run]
category = "Application"
description = "Show how to return to main after the Bevy app has exited"
name = "Return after Run"
wasm = false

[package.metadata.example.rotation]
category = "2D Rendering"
description = "Demonstrates rotating entities in 2D with quaternions"
name = "2D Rotation"
wasm = true

[package.metadata.example.run_conditions]
category = "ECS (Entity Component System)"
description = "Run systems only when one or multiple conditions are met"
name = "Run Conditions"
wasm = false

[package.metadata.example.scale]
category = "Transforms"
description = "Illustrates how to scale an object in each direction"
name = "Scale"
wasm = true

[package.metadata.example.scale_factor_override]
category = "Window"
description = "Illustrates how to customize the default window settings"
name = "Scale Factor Override"
wasm = true

[package.metadata.example.scene]
category = "Scene"
description = "Demonstrates loading from and saving scenes to files"
name = "Scene"
wasm = false

[package.metadata.example.scene_viewer]
category = "Tools"
description = "A simple way to view glTF models with Bevy. Just run `cargo run --release --example scene_viewer /path/to/model.gltf#Scene0`, replacing the path as appropriate. With no arguments it will load the FieldHelmet glTF model from the repository assets subdirectory"
name = "Scene Viewer"
wasm = true

[package.metadata.example.screenshot]
category = "Window"
description = "Shows how to save screenshots to disk"
name = "Screenshot"
wasm = true

[package.metadata.example.shader_defs]
category = "Shaders"
description = "A shader that uses \"shaders defs\" (a bevy tool to selectively toggle parts of a shader)"
name = "Shader Defs"
wasm = true

[package.metadata.example.shader_instancing]
category = "Shaders"
description = "A shader that renders a mesh multiple times in one draw call"
name = "Instancing"
wasm = true

[package.metadata.example.shader_material]
category = "Shaders"
description = "A shader and a material that uses it"
name = "Material"
wasm = true

[package.metadata.example.shader_material_glsl]
category = "Shaders"
description = "A shader that uses the GLSL shading language"
name = "Material - GLSL"
wasm = true

[package.metadata.example.shader_material_screenspace_texture]
category = "Shaders"
description = "A shader that samples a texture with view-independent UV coordinates"
name = "Material - Screenspace Texture"
wasm = true

[package.metadata.example.shader_prepass]
category = "Shaders"
description = "A shader that uses the various textures generated by the prepass"
name = "Material Prepass"
wasm = false

[package.metadata.example.shadow_biases]
category = "3D Rendering"
description = "Demonstrates how shadow biases affect shadows in a 3d scene"
name = "Shadow Biases"
wasm = true

[package.metadata.example.shadow_caster_receiver]
category = "3D Rendering"
description = "Demonstrates how to prevent meshes from casting/receiving shadows in a 3d scene"
name = "Shadow Caster and Receiver"
wasm = true

[package.metadata.example.size_constraints]
category = "UI (User Interface)"
description = "Demonstrates how the to use the size constraints to control the size of a UI node."
name = "Size Constraints"
wasm = true

[package.metadata.example.skybox]
category = "3D Rendering"
description = "Load a cubemap texture onto a cube like a skybox and cycle through different compressed texture formats."
name = "Skybox"
wasm = false

[package.metadata.example.spatial_audio_2d]
category = "Audio"
description = "Shows how to play spatial audio, and moving the emitter in 2D"
name = "Spatial Audio 2D"
wasm = true

[package.metadata.example.spatial_audio_3d]
category = "Audio"
description = "Shows how to play spatial audio, and moving the emitter in 3D"
name = "Spatial Audio 3D"
wasm = true

[package.metadata.example.spherical_area_lights]
category = "3D Rendering"
description = "Demonstrates how point light radius values affect light behavior"
name = "Spherical Area Lights"
wasm = true

[package.metadata.example.split_screen]
category = "3D Rendering"
description = "Demonstrates how to render two cameras to the same window to accomplish \"split screen\""
name = "Split Screen"
wasm = true

[package.metadata.example.spotlight]
category = "3D Rendering"
description = "Illustrates spot lights"
name = "Spotlight"
wasm = true

[package.metadata.example.sprite]
category = "2D Rendering"
description = "Renders a sprite"
name = "Sprite"
wasm = true

[package.metadata.example.sprite_flipping]
category = "2D Rendering"
description = "Renders a sprite flipped along an axis"
name = "Sprite Flipping"
wasm = true

[package.metadata.example.sprite_sheet]
category = "2D Rendering"
description = "Renders an animated sprite"
name = "Sprite Sheet"
wasm = true

[package.metadata.example.ssao]
category = "3D Rendering"
description = "A scene showcasing screen space ambient occlusion"
name = "Screen Space Ambient Occlusion"
wasm = false

[package.metadata.example.startup_system]
category = "ECS (Entity Component System)"
description = "Demonstrates a startup system (one that runs once when the app starts up)"
name = "Startup System"
wasm = false

[package.metadata.example.state]
category = "ECS (Entity Component System)"
description = "Illustrates how to use States to control transitioning from a Menu state to an InGame state"
name = "State"
wasm = false

[package.metadata.example.system_closure]
category = "ECS (Entity Component System)"
description = "Show how to use closures as systems, and how to configure `Local` variables by capturing external state"
name = "System Closure"
wasm = false

[package.metadata.example.system_param]
category = "ECS (Entity Component System)"
description = "Illustrates creating custom system parameters with `SystemParam`"
name = "System Parameter"
wasm = false

[package.metadata.example.system_piping]
category = "ECS (Entity Component System)"
description = "Pipe the output of one system into a second, allowing you to handle any errors gracefully"
name = "System Piping"
wasm = false

[package.metadata.example.text]
category = "UI (User Interface)"
description = "Illustrates creating and updating text"
name = "Text"
wasm = true

[package.metadata.example.text2d]
category = "2D Rendering"
description = "Generates text in 2D"
name = "Text 2D"
wasm = true

[package.metadata.example.text_debug]
category = "UI (User Interface)"
description = "An example for debugging text layout"
name = "Text Debug"
wasm = true

[package.metadata.example.text_input]
category = "Input"
description = "Simple text input with IME support"
name = "Text Input"
wasm = false

[package.metadata.example.text_pipeline]
category = "Stress Tests"
description = "Text Pipeline benchmark"
name = "Text Pipeline"
wasm = false

[package.metadata.example.text_wrap_debug]
category = "UI (User Interface)"
description = "Demonstrates text wrapping"
name = "Text Wrap Debug"
wasm = true

[package.metadata.example.texture]
category = "3D Rendering"
description = "Shows configuration of texture materials"
name = "Texture"
wasm = true

[package.metadata.example.texture_atlas]
category = "2D Rendering"
description = "Generates a texture atlas (sprite sheet) from individual sprites"
name = "Texture Atlas"
wasm = false

[package.metadata.example.texture_binding_array]
category = "Shaders"
description = "A shader that shows how to bind and sample multiple textures as a binding array (a.k.a. bindless textures)."
name = "Texture Binding Array (Bindless Textures)"
wasm = false

[package.metadata.example.thread_pool_resources]
category = "Application"
description = "Creates and customizes the internal thread pool"
name = "Thread Pool Resources"
wasm = false

[package.metadata.example.timers]
category = "ECS (Entity Component System)"
description = "Illustrates ticking `Timer` resources inside systems and handling their state"
name = "Timers"
wasm = false

[package.metadata.example.tonemapping]
category = "3D Rendering"
description = "Compares tonemapping options"
name = "Tonemapping"
wasm = true

[package.metadata.example.touch_input]
category = "Input"
description = "Displays touch presses, releases, and cancels"
name = "Touch Input"
wasm = false

[package.metadata.example.touch_input_events]
category = "Input"
description = "Prints out all touch inputs"
name = "Touch Input Events"
wasm = false

[package.metadata.example.trait_reflection]
category = "Reflection"
description = "Allows reflection with trait objects"
name = "Trait Reflection"
wasm = false

[package.metadata.example.transform]
category = "Transforms"
description = "Shows multiple transformations of objects"
name = "Transform"
wasm = true

[package.metadata.example.transform_hierarchy]
category = "Stress Tests"
description = "Various test cases for hierarchy and transform propagation performance"
name = "Transform Hierarchy"
wasm = false

[package.metadata.example.translation]
category = "Transforms"
description = "Illustrates how to move an object along an axis"
name = "Translation"
wasm = true

[package.metadata.example.transparency_2d]
category = "2D Rendering"
description = "Demonstrates transparency in 2d"
name = "Transparency in 2D"
wasm = true

[package.metadata.example.transparency_3d]
category = "3D Rendering"
description = "Demonstrates transparency in 3d"
name = "Transparency in 3D"
wasm = true

[package.metadata.example.transparency_ui]
category = "UI (User Interface)"
description = "Demonstrates transparency for UI"
name = "Transparency UI"
wasm = true

[package.metadata.example.transparent_window]
category = "Window"
description = "Illustrates making the window transparent and hiding the window decoration"
name = "Transparent Window"
wasm = false

[package.metadata.example.two_passes]
category = "3D Rendering"
description = "Renders two 3d passes to the same window from different perspectives"
name = "Two Passes"
wasm = true

[package.metadata.example.ui]
category = "UI (User Interface)"
description = "Illustrates various features of Bevy UI"
name = "UI"
wasm = true

[package.metadata.example.ui_scaling]
category = "UI (User Interface)"
description = "Illustrates how to scale the UI"
name = "UI Scaling"
wasm = true

[package.metadata.example.ui_texture_atlas]
category = "UI (User Interface)"
description = "Illustrates how to use TextureAtlases in UI"
name = "UI Texture Atlas"
wasm = true

[package.metadata.example.update_gltf_scene]
category = "3D Rendering"
description = "Update a scene from a glTF file, either by spawning the scene as a child of another entity, or by accessing the entities of the scene"
name = "Update glTF Scene"
wasm = true

[package.metadata.example.vertex_colors]
category = "3D Rendering"
description = "Shows the use of vertex colors"
name = "Vertex Colors"
wasm = true

[package.metadata.example.viewport_debug]
category = "UI (User Interface)"
description = "An example for debugging viewport coordinates"
name = "Viewport Debug"
wasm = true

[package.metadata.example.window_fallthrough]
category = "UI (User Interface)"
description = "Illustrates how to access `winit::window::Window`'s `hittest` functionality."
name = "Window Fallthrough"
wasm = false

[package.metadata.example.window_resizing]
category = "Window"
description = "Demonstrates resizing and responding to resizing a window"
name = "Window Resizing"
wasm = true

[package.metadata.example.window_settings]
category = "Window"
description = "Demonstrates customizing default window settings"
name = "Window Settings"
wasm = true

[package.metadata.example.wireframe]
category = "3D Rendering"
description = "Showcases wireframe rendering"
name = "Wireframe"
wasm = false

[package.metadata.example.without_winit]
category = "Application"
description = "Create an application without winit (runs single time, no event loop)"
name = "Without Winit"
wasm = false

[package.metadata.example.z_index]
category = "UI (User Interface)"
description = "Demonstrates how to control the relative depth (z-position) of UI elements"
name = "UI Z-Index"
wasm = true

[profile.stress-test]
lto = "fat"
panic = "abort"
inherits = "release"

[profile.wasm-release]
opt-level = "z"
lto = "fat"
codegen-units = 1
inherits = "release"

[[example]]
name = "hello_world"
path = "examples/hello_world.rs"
doc-scrape-examples = true

[[example]]
name = "bloom_2d"
path = "examples/2d/bloom_2d.rs"
doc-scrape-examples = true

[[example]]
name = "move_sprite"
path = "examples/2d/move_sprite.rs"
doc-scrape-examples = true

[[example]]
name = "rotation"
path = "examples/2d/rotation.rs"
doc-scrape-examples = true

[[example]]
name = "mesh2d"
path = "examples/2d/mesh2d.rs"
doc-scrape-examples = true

[[example]]
name = "mesh2d_manual"
path = "examples/2d/mesh2d_manual.rs"
doc-scrape-examples = true

[[example]]
name = "mesh2d_vertex_color_texture"
path = "examples/2d/mesh2d_vertex_color_texture.rs"
doc-scrape-examples = true

[[example]]
name = "2d_shapes"
path = "examples/2d/2d_shapes.rs"
doc-scrape-examples = true

[[example]]
name = "custom_gltf_vertex_attribute"
path = "examples/2d/custom_gltf_vertex_attribute.rs"
doc-scrape-examples = true

[[example]]
name = "2d_gizmos"
path = "examples/2d/2d_gizmos.rs"
doc-scrape-examples = true

[[example]]
name = "sprite"
path = "examples/2d/sprite.rs"
doc-scrape-examples = true

[[example]]
name = "sprite_flipping"
path = "examples/2d/sprite_flipping.rs"
doc-scrape-examples = true

[[example]]
name = "sprite_sheet"
path = "examples/2d/sprite_sheet.rs"
doc-scrape-examples = true

[[example]]
name = "text2d"
path = "examples/2d/text2d.rs"
doc-scrape-examples = true

[[example]]
name = "texture_atlas"
path = "examples/2d/texture_atlas.rs"
doc-scrape-examples = true

[[example]]
name = "transparency_2d"
path = "examples/2d/transparency_2d.rs"
doc-scrape-examples = true

[[example]]
name = "pixel_perfect"
path = "examples/2d/pixel_perfect.rs"
doc-scrape-examples = true

[[example]]
name = "3d_scene"
path = "examples/3d/3d_scene.rs"
doc-scrape-examples = true

[[example]]
name = "3d_shapes"
path = "examples/3d/3d_shapes.rs"
doc-scrape-examples = true

[[example]]
name = "generate_custom_mesh"
path = "examples/3d/generate_custom_mesh.rs"
doc-scrape-examples = true

[[example]]
name = "anti_aliasing"
path = "examples/3d/anti_aliasing.rs"
doc-scrape-examples = true

[[example]]
name = "3d_gizmos"
path = "examples/3d/3d_gizmos.rs"
doc-scrape-examples = true

[[example]]
name = "atmospheric_fog"
path = "examples/3d/atmospheric_fog.rs"
doc-scrape-examples = true

[[example]]
name = "fog"
path = "examples/3d/fog.rs"
doc-scrape-examples = true

[[example]]
name = "blend_modes"
path = "examples/3d/blend_modes.rs"
doc-scrape-examples = true

[[example]]
name = "lighting"
path = "examples/3d/lighting.rs"
doc-scrape-examples = true

[[example]]
name = "lines"
path = "examples/3d/lines.rs"
doc-scrape-examples = true

[[example]]
name = "ssao"
path = "examples/3d/ssao.rs"
doc-scrape-examples = true

[[example]]
name = "spotlight"
path = "examples/3d/spotlight.rs"
doc-scrape-examples = true

[[example]]
name = "bloom_3d"
path = "examples/3d/bloom_3d.rs"
doc-scrape-examples = true

[[example]]
name = "load_gltf"
path = "examples/3d/load_gltf.rs"
doc-scrape-examples = true

[[example]]
name = "tonemapping"
path = "examples/3d/tonemapping.rs"
doc-scrape-examples = true

[[example]]
name = "orthographic"
path = "examples/3d/orthographic.rs"
doc-scrape-examples = true

[[example]]
name = "parenting"
path = "examples/3d/parenting.rs"
doc-scrape-examples = true

[[example]]
name = "pbr"
path = "examples/3d/pbr.rs"
doc-scrape-examples = true

[[example]]
name = "parallax_mapping"
path = "examples/3d/parallax_mapping.rs"
doc-scrape-examples = true

[[example]]
name = "render_to_texture"
path = "examples/3d/render_to_texture.rs"
doc-scrape-examples = true

[[example]]
name = "shadow_biases"
path = "examples/3d/shadow_biases.rs"
doc-scrape-examples = true

[[example]]
name = "shadow_caster_receiver"
path = "examples/3d/shadow_caster_receiver.rs"
doc-scrape-examples = true

[[example]]
name = "skybox"
path = "examples/3d/skybox.rs"
doc-scrape-examples = true

[[example]]
name = "spherical_area_lights"
path = "examples/3d/spherical_area_lights.rs"
doc-scrape-examples = true

[[example]]
name = "split_screen"
path = "examples/3d/split_screen.rs"
doc-scrape-examples = true

[[example]]
name = "texture"
path = "examples/3d/texture.rs"
doc-scrape-examples = true

[[example]]
name = "transparency_3d"
path = "examples/3d/transparency_3d.rs"
doc-scrape-examples = true

[[example]]
name = "two_passes"
path = "examples/3d/two_passes.rs"
doc-scrape-examples = true

[[example]]
name = "update_gltf_scene"
path = "examples/3d/update_gltf_scene.rs"
doc-scrape-examples = true

[[example]]
name = "vertex_colors"
path = "examples/3d/vertex_colors.rs"
doc-scrape-examples = true

[[example]]
name = "wireframe"
path = "examples/3d/wireframe.rs"
doc-scrape-examples = true

[[example]]
name = "no_prepass"
path = "tests/3d/no_prepass.rs"
doc-scrape-examples = true

[[example]]
name = "animated_fox"
path = "examples/animation/animated_fox.rs"
doc-scrape-examples = true

[[example]]
name = "morph_targets"
path = "examples/animation/morph_targets.rs"
doc-scrape-examples = true

[[example]]
name = "animated_transform"
path = "examples/animation/animated_transform.rs"
doc-scrape-examples = true

[[example]]
name = "cubic_curve"
path = "examples/animation/cubic_curve.rs"
doc-scrape-examples = true

[[example]]
name = "custom_skinned_mesh"
path = "examples/animation/custom_skinned_mesh.rs"
doc-scrape-examples = true

[[example]]
name = "gltf_skinned_mesh"
path = "examples/animation/gltf_skinned_mesh.rs"
doc-scrape-examples = true

[[example]]
name = "custom_loop"
path = "examples/app/custom_loop.rs"
doc-scrape-examples = true

[[example]]
name = "drag_and_drop"
path = "examples/app/drag_and_drop.rs"
doc-scrape-examples = true

[[example]]
name = "empty"
path = "examples/app/empty.rs"
doc-scrape-examples = true

[[example]]
name = "empty_defaults"
path = "examples/app/empty_defaults.rs"
doc-scrape-examples = true

[[example]]
name = "headless"
path = "examples/app/headless.rs"
doc-scrape-examples = true

[[example]]
name = "logs"
path = "examples/app/logs.rs"
doc-scrape-examples = true

[[example]]
name = "plugin"
path = "examples/app/plugin.rs"
doc-scrape-examples = true

[[example]]
name = "plugin_group"
path = "examples/app/plugin_group.rs"
doc-scrape-examples = true

[[example]]
name = "return_after_run"
path = "examples/app/return_after_run.rs"
doc-scrape-examples = true

[[example]]
name = "thread_pool_resources"
path = "examples/app/thread_pool_resources.rs"
doc-scrape-examples = true

[[example]]
name = "no_renderer"
path = "examples/app/no_renderer.rs"
doc-scrape-examples = true

[[example]]
name = "without_winit"
path = "examples/app/without_winit.rs"
doc-scrape-examples = true

[[example]]
name = "asset_loading"
path = "examples/asset/asset_loading.rs"
doc-scrape-examples = true

[[example]]
name = "custom_asset"
path = "examples/asset/custom_asset.rs"
doc-scrape-examples = true

[[example]]
name = "custom_asset_io"
path = "examples/asset/custom_asset_io.rs"
doc-scrape-examples = true

[[example]]
name = "hot_asset_reloading"
path = "examples/asset/hot_asset_reloading.rs"
doc-scrape-examples = true

[[example]]
name = "async_compute"
path = "examples/async_tasks/async_compute.rs"
doc-scrape-examples = true

[[example]]
name = "external_source_external_thread"
path = "examples/async_tasks/external_source_external_thread.rs"
doc-scrape-examples = true

[[example]]
name = "audio"
path = "examples/audio/audio.rs"
doc-scrape-examples = true

[[example]]
name = "audio_control"
path = "examples/audio/audio_control.rs"
doc-scrape-examples = true

[[example]]
name = "decodable"
path = "examples/audio/decodable.rs"
doc-scrape-examples = true

[[example]]
name = "spatial_audio_2d"
path = "examples/audio/spatial_audio_2d.rs"
doc-scrape-examples = true

[[example]]
name = "spatial_audio_3d"
path = "examples/audio/spatial_audio_3d.rs"
doc-scrape-examples = true

[[example]]
name = "log_diagnostics"
path = "examples/diagnostics/log_diagnostics.rs"
doc-scrape-examples = true

[[example]]
name = "custom_diagnostic"
path = "examples/diagnostics/custom_diagnostic.rs"
doc-scrape-examples = true

[[example]]
name = "ecs_guide"
path = "examples/ecs/ecs_guide.rs"
doc-scrape-examples = true

[[example]]
name = "apply_deferred"
path = "examples/ecs/apply_deferred.rs"
doc-scrape-examples = true

[[example]]
name = "component_change_detection"
path = "examples/ecs/component_change_detection.rs"
doc-scrape-examples = true

[[example]]
name = "custom_query_param"
path = "examples/ecs/custom_query_param.rs"
doc-scrape-examples = true

[[example]]
name = "event"
path = "examples/ecs/event.rs"
doc-scrape-examples = true

[[example]]
name = "fixed_timestep"
path = "examples/ecs/fixed_timestep.rs"
doc-scrape-examples = true

[[example]]
name = "generic_system"
path = "examples/ecs/generic_system.rs"
doc-scrape-examples = true

[[example]]
name = "hierarchy"
path = "examples/ecs/hierarchy.rs"
doc-scrape-examples = true

[[example]]
name = "iter_combinations"
path = "examples/ecs/iter_combinations.rs"
doc-scrape-examples = true

[[example]]
name = "parallel_query"
path = "examples/ecs/parallel_query.rs"
doc-scrape-examples = true

[[example]]
name = "removal_detection"
path = "examples/ecs/removal_detection.rs"
doc-scrape-examples = true

[[example]]
name = "run_conditions"
path = "examples/ecs/run_conditions.rs"
doc-scrape-examples = true

[[example]]
name = "startup_system"
path = "examples/ecs/startup_system.rs"
doc-scrape-examples = true

[[example]]
name = "state"
path = "examples/ecs/state.rs"
doc-scrape-examples = true

[[example]]
name = "system_piping"
path = "examples/ecs/system_piping.rs"
doc-scrape-examples = true

[[example]]
name = "system_closure"
path = "examples/ecs/system_closure.rs"
doc-scrape-examples = true

[[example]]
name = "system_param"
path = "examples/ecs/system_param.rs"
doc-scrape-examples = true

[[example]]
name = "timers"
path = "examples/ecs/timers.rs"
doc-scrape-examples = true

[[example]]
name = "alien_cake_addict"
path = "examples/games/alien_cake_addict.rs"
doc-scrape-examples = true

[[example]]
name = "breakout"
path = "examples/games/breakout.rs"
doc-scrape-examples = true

[[example]]
name = "contributors"
path = "examples/games/contributors.rs"
doc-scrape-examples = true

[[example]]
name = "game_menu"
path = "examples/games/game_menu.rs"
doc-scrape-examples = true

[[example]]
name = "char_input_events"
path = "examples/input/char_input_events.rs"
doc-scrape-examples = true

[[example]]
name = "gamepad_input"
path = "examples/input/gamepad_input.rs"
doc-scrape-examples = true

[[example]]
name = "gamepad_input_events"
path = "examples/input/gamepad_input_events.rs"
doc-scrape-examples = true

[[example]]
name = "gamepad_rumble"
path = "examples/input/gamepad_rumble.rs"
doc-scrape-examples = true

[[example]]
name = "keyboard_input"
path = "examples/input/keyboard_input.rs"
doc-scrape-examples = true

[[example]]
name = "keyboard_modifiers"
path = "examples/input/keyboard_modifiers.rs"
doc-scrape-examples = true

[[example]]
name = "keyboard_input_events"
path = "examples/input/keyboard_input_events.rs"
doc-scrape-examples = true

[[example]]
name = "mouse_input"
path = "examples/input/mouse_input.rs"
doc-scrape-examples = true

[[example]]
name = "mouse_input_events"
path = "examples/input/mouse_input_events.rs"
doc-scrape-examples = true

[[example]]
name = "mouse_grab"
path = "examples/input/mouse_grab.rs"
doc-scrape-examples = true

[[example]]
name = "touch_input"
path = "examples/input/touch_input.rs"
doc-scrape-examples = true

[[example]]
name = "touch_input_events"
path = "examples/input/touch_input_events.rs"
doc-scrape-examples = true

[[example]]
name = "text_input"
path = "examples/input/text_input.rs"
doc-scrape-examples = true

[[example]]
name = "reflection"
path = "examples/reflection/reflection.rs"
doc-scrape-examples = true

[[example]]
name = "generic_reflection"
path = "examples/reflection/generic_reflection.rs"
doc-scrape-examples = true

[[example]]
name = "reflection_types"
path = "examples/reflection/reflection_types.rs"
doc-scrape-examples = true

[[example]]
name = "trait_reflection"
path = "examples/reflection/trait_reflection.rs"
doc-scrape-examples = true

[[example]]
name = "scene"
path = "examples/scene/scene.rs"
doc-scrape-examples = true

[[example]]
name = "custom_vertex_attribute"
path = "examples/shader/custom_vertex_attribute.rs"
doc-scrape-examples = true

[[example]]
name = "post_processing"
path = "examples/shader/post_processing.rs"
doc-scrape-examples = true

[[example]]
name = "shader_defs"
path = "examples/shader/shader_defs.rs"
doc-scrape-examples = true

[[example]]
name = "shader_material"
path = "examples/shader/shader_material.rs"
doc-scrape-examples = true

[[example]]
name = "shader_prepass"
path = "examples/shader/shader_prepass.rs"
doc-scrape-examples = true

[[example]]
name = "shader_material_screenspace_texture"
path = "examples/shader/shader_material_screenspace_texture.rs"
doc-scrape-examples = true

[[example]]
name = "shader_material_glsl"
path = "examples/shader/shader_material_glsl.rs"
doc-scrape-examples = true

[[example]]
name = "shader_instancing"
path = "examples/shader/shader_instancing.rs"
doc-scrape-examples = true

[[example]]
name = "animate_shader"
path = "examples/shader/animate_shader.rs"
doc-scrape-examples = true

[[example]]
name = "compute_shader_game_of_life"
path = "examples/shader/compute_shader_game_of_life.rs"
doc-scrape-examples = true

[[example]]
name = "array_texture"
path = "examples/shader/array_texture.rs"
doc-scrape-examples = true

[[example]]
name = "texture_binding_array"
path = "examples/shader/texture_binding_array.rs"
doc-scrape-examples = true

[[example]]
name = "bevymark"
path = "examples/stress_tests/bevymark.rs"
doc-scrape-examples = true

[[example]]
name = "many_animated_sprites"
path = "examples/stress_tests/many_animated_sprites.rs"
doc-scrape-examples = true

[[example]]
name = "many_buttons"
path = "examples/stress_tests/many_buttons.rs"
doc-scrape-examples = true

[[example]]
name = "many_cubes"
path = "examples/stress_tests/many_cubes.rs"
doc-scrape-examples = true

[[example]]
name = "many_gizmos"
path = "examples/stress_tests/many_gizmos.rs"
doc-scrape-examples = true

[[example]]
name = "many_foxes"
path = "examples/stress_tests/many_foxes.rs"
doc-scrape-examples = true

[[example]]
name = "many_glyphs"
path = "examples/stress_tests/many_glyphs.rs"
doc-scrape-examples = true

[[example]]
name = "many_lights"
path = "examples/stress_tests/many_lights.rs"
doc-scrape-examples = true

[[example]]
name = "many_sprites"
path = "examples/stress_tests/many_sprites.rs"
doc-scrape-examples = true

[[example]]
name = "transform_hierarchy"
path = "examples/stress_tests/transform_hierarchy.rs"
doc-scrape-examples = true

[[example]]
name = "text_pipeline"
path = "examples/stress_tests/text_pipeline.rs"
doc-scrape-examples = true

[[example]]
name = "scene_viewer"
path = "examples/tools/scene_viewer/main.rs"
doc-scrape-examples = true

[[example]]
name = "gamepad_viewer"
path = "examples/tools/gamepad_viewer.rs"
doc-scrape-examples = true

[[example]]
name = "nondeterministic_system_order"
path = "examples/ecs/nondeterministic_system_order.rs"
doc-scrape-examples = true

[[example]]
name = "3d_rotation"
path = "examples/transforms/3d_rotation.rs"
doc-scrape-examples = true

[[example]]
name = "scale"
path = "examples/transforms/scale.rs"
doc-scrape-examples = true

[[example]]
name = "transform"
path = "examples/transforms/transform.rs"
doc-scrape-examples = true

[[example]]
name = "translation"
path = "examples/transforms/translation.rs"
doc-scrape-examples = true

[[example]]
name = "borders"
path = "examples/ui/borders.rs"
doc-scrape-examples = true

[[example]]
name = "button"
path = "examples/ui/button.rs"
doc-scrape-examples = true

[[example]]
name = "display_and_visibility"
path = "examples/ui/display_and_visibility.rs"
doc-scrape-examples = true

[[example]]
name = "window_fallthrough"
path = "examples/ui/window_fallthrough.rs"
doc-scrape-examples = true

[[example]]
name = "font_atlas_debug"
path = "examples/ui/font_atlas_debug.rs"
doc-scrape-examples = true

[[example]]
name = "overflow"
path = "examples/ui/overflow.rs"
doc-scrape-examples = true

[[example]]
name = "overflow_debug"
path = "examples/ui/overflow_debug.rs"
doc-scrape-examples = true

[[example]]
name = "relative_cursor_position"
path = "examples/ui/relative_cursor_position.rs"
doc-scrape-examples = true

[[example]]
name = "size_constraints"
path = "examples/ui/size_constraints.rs"
doc-scrape-examples = true

[[example]]
name = "text"
path = "examples/ui/text.rs"
doc-scrape-examples = true

[[example]]
name = "text_debug"
path = "examples/ui/text_debug.rs"
doc-scrape-examples = true

[[example]]
name = "flex_layout"
path = "examples/ui/flex_layout.rs"
doc-scrape-examples = true

[[example]]
name = "text_wrap_debug"
path = "examples/ui/text_wrap_debug.rs"
doc-scrape-examples = true

[[example]]
name = "grid"
path = "examples/ui/grid.rs"
doc-scrape-examples = true

[[example]]
name = "transparency_ui"
path = "examples/ui/transparency_ui.rs"
doc-scrape-examples = true

[[example]]
name = "z_index"
path = "examples/ui/z_index.rs"
doc-scrape-examples = true

[[example]]
name = "ui"
path = "examples/ui/ui.rs"
doc-scrape-examples = true

[[example]]
name = "ui_scaling"
path = "examples/ui/ui_scaling.rs"
doc-scrape-examples = true

[[example]]
name = "ui_texture_atlas"
path = "examples/ui/ui_texture_atlas.rs"
doc-scrape-examples = true

[[example]]
name = "viewport_debug"
path = "examples/ui/viewport_debug.rs"
doc-scrape-examples = true

[[example]]
name = "clear_color"
path = "examples/window/clear_color.rs"
doc-scrape-examples = true

[[example]]
name = "low_power"
path = "examples/window/low_power.rs"
doc-scrape-examples = true

[[example]]
name = "multiple_windows"
path = "examples/window/multiple_windows.rs"
doc-scrape-examples = true

[[example]]
name = "scale_factor_override"
path = "examples/window/scale_factor_override.rs"
doc-scrape-examples = true

[[example]]
name = "screenshot"
path = "examples/window/screenshot.rs"
doc-scrape-examples = true

[[example]]
name = "transparent_window"
path = "examples/window/transparent_window.rs"
doc-scrape-examples = true

[[example]]
name = "window_settings"
path = "examples/window/window_settings.rs"
doc-scrape-examples = true

[[example]]
name = "resizing"
path = "tests/window/resizing.rs"
doc-scrape-examples = true

[[example]]
name = "minimising"
path = "tests/window/minimising.rs"
doc-scrape-examples = true

[[example]]
name = "window_resizing"
path = "examples/window/window_resizing.rs"
doc-scrape-examples = true

[[example]]
name = "fallback_image"
path = "examples/shader/fallback_image.rs"
doc-scrape-examples = true

[dependencies.bevy_dylib]
version = "0.11.3"
optional = true
default-features = false

[dependencies.bevy_internal]
version = "0.11.3"
default-features = false

[dev-dependencies.anyhow]
version = "1.0.4"

[dev-dependencies.bytemuck]
version = "1.7"

[dev-dependencies.crossbeam-channel]
version = "0.5.0"

[dev-dependencies.futures-lite]
version = "1.11.3"

[dev-dependencies.rand]
version = "0.8.0"

[dev-dependencies.ron]
version = "0.8.0"

[dev-dependencies.serde]
version = "1"
features = ["derive"]

[features]
accesskit_unix = ["bevy_internal/accesskit_unix"]
android_shared_stdcxx = ["bevy_internal/android_shared_stdcxx"]
animation = [
    "bevy_internal/animation",
    "bevy_animation",
]
basis-universal = ["bevy_internal/basis-universal"]
bevy_animation = ["bevy_internal/bevy_animation"]
bevy_asset = ["bevy_internal/bevy_asset"]
bevy_audio = ["bevy_internal/bevy_audio"]
bevy_ci_testing = ["bevy_internal/bevy_ci_testing"]
bevy_core_pipeline = [
    "bevy_internal/bevy_core_pipeline",
    "bevy_asset",
    "bevy_render",
]
bevy_dynamic_plugin = ["bevy_internal/bevy_dynamic_plugin"]
bevy_gilrs = ["bevy_internal/bevy_gilrs"]
bevy_gizmos = ["bevy_internal/bevy_gizmos"]
bevy_gltf = [
    "bevy_internal/bevy_gltf",
    "bevy_asset",
    "bevy_scene",
    "bevy_pbr",
]
bevy_pbr = [
    "bevy_internal/bevy_pbr",
    "bevy_asset",
    "bevy_render",
    "bevy_core_pipeline",
]
bevy_render = ["bevy_internal/bevy_render"]
bevy_scene = [
    "bevy_internal/bevy_scene",
    "bevy_asset",
]
bevy_sprite = [
    "bevy_internal/bevy_sprite",
    "bevy_render",
    "bevy_core_pipeline",
]
bevy_text = [
    "bevy_internal/bevy_text",
    "bevy_asset",
    "bevy_sprite",
]
bevy_ui = [
    "bevy_internal/bevy_ui",
    "bevy_core_pipeline",
    "bevy_text",
    "bevy_sprite",
]
bevy_winit = ["bevy_internal/bevy_winit"]
bmp = ["bevy_internal/bmp"]
dds = ["bevy_internal/dds"]
debug_asset_server = ["bevy_internal/debug_asset_server"]
default = [
    "animation",
    "bevy_asset",
    "bevy_audio",
    "bevy_gilrs",
    "bevy_scene",
    "bevy_winit",
    "bevy_core_pipeline",
    "bevy_pbr",
    "bevy_gltf",
    "bevy_render",
    "bevy_sprite",
    "bevy_text",
    "bevy_ui",
    "multi-threaded",
    "png",
    "hdr",
    "ktx2",
    "zstd",
    "vorbis",
    "x11",
    "filesystem_watcher",
    "bevy_gizmos",
    "android_shared_stdcxx",
    "tonemapping_luts",
    "default_font",
    "webgl2",
]
default_font = ["bevy_internal/default_font"]
detailed_trace = ["bevy_internal/detailed_trace"]
dynamic_linking = [
    "bevy_dylib",
    "bevy_internal/dynamic_linking",
]
exr = ["bevy_internal/exr"]
filesystem_watcher = ["bevy_internal/filesystem_watcher"]
flac = ["bevy_internal/flac"]
glam_assert = ["bevy_internal/glam_assert"]
hdr = ["bevy_internal/hdr"]
jpeg = ["bevy_internal/jpeg"]
ktx2 = ["bevy_internal/ktx2"]
minimp3 = ["bevy_internal/minimp3"]
mp3 = ["bevy_internal/mp3"]
multi-threaded = ["bevy_internal/multi-threaded"]
png = ["bevy_internal/png"]
pnm = ["bevy_internal/pnm"]
serialize = ["bevy_internal/serialize"]
shader_format_glsl = ["bevy_internal/shader_format_glsl"]
shader_format_spirv = ["bevy_internal/shader_format_spirv"]
subpixel_glyph_atlas = ["bevy_internal/subpixel_glyph_atlas"]
symphonia-aac = ["bevy_internal/symphonia-aac"]
symphonia-all = ["bevy_internal/symphonia-all"]
symphonia-flac = ["bevy_internal/symphonia-flac"]
symphonia-isomp4 = ["bevy_internal/symphonia-isomp4"]
symphonia-vorbis = ["bevy_internal/symphonia-vorbis"]
symphonia-wav = ["bevy_internal/symphonia-wav"]
tga = ["bevy_internal/tga"]
tonemapping_luts = ["bevy_internal/tonemapping_luts"]
trace = ["bevy_internal/trace"]
trace_chrome = [
    "trace",
    "bevy_internal/trace_chrome",
]
trace_tracy = [
    "trace",
    "bevy_internal/trace_tracy",
]
trace_tracy_memory = [
    "trace",
    "bevy_internal/trace_tracy",
    "bevy_internal/trace_tracy_memory",
]
vorbis = ["bevy_internal/vorbis"]
wav = ["bevy_internal/wav"]
wayland = ["bevy_internal/wayland"]
webgl2 = ["bevy_internal/webgl"]
webp = ["bevy_internal/webp"]
wgpu_trace = ["bevy_internal/wgpu_trace"]
x11 = ["bevy_internal/x11"]
zlib = ["bevy_internal/zlib"]
zstd = ["bevy_internal/zstd"]
