bevy/ROADMAP.md
2020-03-26 23:40:25 -07:00

1.7 KiB

Bevy Roadmap

Here is the current list of planned features. All items are sorted in approximate priority order, but actual implementation order will vary based on individual interest and/or funding.

  • UI Framework
    • Text
    • Styling
  • Rendering
    • Textures
    • Physically based rendering
    • Skeletal animation
    • Add runtime type safety to uniform bindings (and maybe compile time)
    • Inject layout set/bindings into shader source so they don't need to be defined in-shader. Specify set / binding indices in resource providers?
    • Pull as much logic as possible from wgpu_renderer into a "render orchestrator" struct/trait
    • Separate original/uncompiled/no_defs PipelineDescriptor from compiled PipelineDescriptor conceptually
    • Try to make Renderer a resource + system
  • Docs
    • Add doc comments to code
    • Add tutorials
    • Add feature docs
    • Add "template" projects
    • Add #![deny(warnings, missing_docs)] to ensure future contributions meet style/doc standards
  • ECS
    • Remove as many references to Resources as possible in favor of resolved resource types
    • Consider adding Renderer and World to Resources
  • Error Handling
    • Custom error type?
    • Remove as many panics / unwraps as possible
  • Input
    • Keyboard and mouse events
    • Gamepad events
  • Assets
    • Load GLTF files
  • Scene
    • Define scene format
    • Load scenes from files (likely RON)
  • Plugins
    • Live plugin reloading
  • Editor
    • Editor <-> game communication protocol
    • Build UI using bevy UI framework
    • Consider supporting embedding parts of the editor directly into games
  • Physics
    • High level physics data types
    • Integrate with nphysics
  • Platform Support
    • Android
    • iOS
    • Web