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.

Sub-issues

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