Skip to content

feat: Implement Object UIΒ #4

@Bli-AIk

Description

@Bli-AIk

πŸ”— Is your feature request related to a specific issue?

The MooaLewaUI framework, with its XamlX integration, defines an abstract UI structure. However, it needs a concrete rendering backend to actually display this UI. One desirable backend is a system that renders UI elements as standard game objects within the world.


πŸ’‘ Feature Description

Create an "Object UI" rendering backend for MooaLewaUI. This backend will translate the abstract UI control tree (defined in XAML or code) into a hierarchy of game objects using sprites, meshes, and other standard engine components.

  • Expected outcome or effect: Rendering of the UI as standard game objects within the game scene, allowing for diegetic or 3D UI.
  • Specific implementation ideas: The following definitions are for reference only and are subject to change. Implementation could include:
    • A set of ObjectButton, ObjectTextBlock, etc., classes that implement the abstract UI control interfaces.
    • These classes will be responsible for creating and managing the corresponding visual game objects.
    • An ObjectUIRenderer would be responsible for instantiating these objects based on the UI tree provided by the XAML loader.
  • Usage scenarios or benefits:
    • Creating in-world computer terminals or floating health bars.
    • Building UIs that can be affected by in-game physics or lighting.
    • A flexible, engine-agnostic default renderer for the framework.

βš– Alternatives Considered

N/A


πŸ“ Additional Information

This backend should be the primary, engine-independent implementation, while others (like the UGUI backend) will be engine-specific.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

Status

Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions