Skip to content

Releases: bytestring-net/bevy_lunex

Release 0.2.4

21 Sep 12:25
51d39bc
Compare
Choose a tag to compare

Migration

Rename UiPlugin -> UiDefaultPlugins

What's Changed

New Contributors

Full Changelog: 0.2.3...0.2.4

Release 0.2.3

22 Jul 14:32
366e36e
Compare
Choose a tag to compare

Changes:

  • Added better bundles for cursor
  • Polished cursor picking implementation
  • New examples
  • Added UiTree::new3d configuration
  • Bugfixes

Migration

Rename UiTree::new -> UiTree::new2d

Full Changelog: 0.2.2...0.2.3

Release 0.2.2

14 Jul 13:22
88cf92a
Compare
Choose a tag to compare

Added free cursor movement support for Gamepads to Lunex.

Changes

Now each Cursor2d requires this bundle for picking to work

PointerBundle::new(PointerId::Custom(pointer::Uuid::new_v4())),
  • Added GamepadCursor marker component, that you can add to your cursor to make it pull data from gamepad instead of mouse.

Full Changelog: 0.2.1...0.2.2

Release 0.2.1

09 Jul 19:12
4ab01f1
Compare
Choose a tag to compare
  • Added UiTextSize component, decoupling font_size from logical font_size and fixing blurry text
  • Updated dependencies

Full Changelog: 0.2.0...0.2.1

Release 0.2.0

04 Jul 19:29
617e678
Compare
Choose a tag to compare
  • Updated to 0.14.0
  • Support for 2D meshes
  • New kira feature adding OnHoverPlaySound component
  • Fixed display scale
  • Fixed perspective zoom on camera
  • Fixed mod picking issues

Full Changelog: 0.1.0...0.2.0

Release v0.1.0

16 Jun 14:15
91e5489
Compare
Choose a tag to compare

image

In the past five months, I have dedicated significant effort to a complete rewrite of Bevy_Lunex. I am excited to announce that the library has reached a functional state. Here are the major highlights since version 0.0.11:

Major changes

  • States - UI entities now feature a state machine, akin to TailwindCSS's class overrides (e.g., bg-red-500 hover:bg-yellow-500). This allows for defining a wide range of properties, including layout changes, based on different states.

  • Worldspace UI - Creating worldspace and diegetic UI is now possible.

  • 2D & 3D - You can now combine 2D and 3D cameras to render 2D UI elements on top of a 3D scene, perfect for HUDs and other overlay interfaces.

  • Component Abstraction - Abstract different UI components (not ECS components) such as buttons and input fields into their own encapsulated abstractions, enhancing modularity and reusability.

  • Routing - Organize your project by splitting your UI into distinct "routes" (e.g., Inventory, MainMenu, Settings). These routes can be spawned and managed dynamically, keeping your UI code tidy and manageable.

  • Interactivity - Now implemented on top of bevy_mod_picking, providing a significantly better solution compared to previous custom implementations.

  • Lazy compute - Layout calculations are now cached. This offers performance benefits, especially for infrequently updated UIs.

  • New UI Units - Mix and match different units like pixels and percentages (9 total) in the layout. Can be compared to HTML's calc(...) function.

  • ECS modularity - All user interfaces are now constructed using standard ECS entities and components. This change paves the way for leveraging the upcoming BSN (Bevy Scene Notation) addition.

Try it out

Get started by reading official Bevy Lunex Book docs.

Check out the Bevypunk WASM on Itch.io.

Changelog

Full Changelog: https://github.com/bytestring-net/bevy_lunex/commits/0.1.0