Skip to content

feat: Implement UGUI #5

@Bli-AIk

Description

@Bli-AIk

🔗 Is your feature request related to a specific issue?

For projects built on the Unity engine, leveraging the native Unity UI (UGUI) system is often the most performant and well-integrated solution. The MooaLewaUI framework needs a backend that can target UGUI to be a viable option for Unity developers.


💡 Feature Description

Create a UGUI rendering backend for MooaLewaUI. This implementation will translate the framework's abstract UI tree into a hierarchy of UGUI GameObjects, Canvases, and Components.

  • Expected outcome or effect: The ability to render the framework's XAML-defined UI using the native, high-performance UGUI system in Unity.
  • Specific implementation ideas: The following definitions are for reference only and are subject to change. Implementation could include:
    • A set of UGUIButton, UGUITextBlock classes that implement the abstract control interfaces from the core UI framework.
    • These classes will wrap UGUI components (e.g., UnityEngine.UI.Button, TMPro.TextMeshProUGUI).
    • A UGUIRenderer will be responsible for creating and managing the UGUI object hierarchy under a Canvas.
  • Usage scenarios or benefits: This provides a high-performance, engine-native UI solution for Unity users. It allows them to benefit from the framework's architecture (XAML, data binding) while still getting the performance and editor integration of UGUI.

⚖ Alternatives Considered

N/A


📝 Additional Information

This will be an engine-specific implementation, likely housed in a separate assembly or package (e.g., Lunar.Framework.MooaLewaUI.Unity).

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