Skip to content

Add support for XAML-based UI screens/controls #12506

Open
@ilievmark

Description

@ilievmark

Describe the project you are working on

2D indie games, with UI screens

Describe the problem or limitation you are having in your project

Designing UI screens in Godot you can find quite a pain
Its quite simple from one point of view, but when you want to make something custom, with effects, design or animations, you will find it quite limmited

Describe the feature / enhancement and how it helps to overcome the problem or limitation

I have vast of experience coding mobile apps with Xamarin/MAUI and different views using XAML
And I was wondering, if you can consider implementing a side car approach for implementing UI for advanced reasons

For instance, there is framework, NoesisUI, for UE5 and Unity that provides such flexibility
https://www.noesisengine.com/noesisgui/
Knowing xaml, Id say its quite simple and flexible to implement UI with it of any complexity

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

There are basically two ways to implement it
1 is to make it nativelly supported, to be used from C++, GDScript and C# (implement it from scratch for Godot, over existing UI elements)
2 is to use somehow the advantage of .NET platform - there is MAUI that already allows this to be used (Obviously, limmiting this feature to be used only for C# Godot users)

Cant really share more tech details depending on its relevance

All I can say is that nature of Xamarin/MAUI it to provide crossplatform interface to use native controls of different platforms, using Renderers and Behaviors. For second case, at least, we can try to make a lib of renderers/wrappers over Godot's controls to XAML over it

If this enhancement will not be used often, can it be worked around with a few lines of script?

not a case

Is there a reason why this should be core and not an add-on in the asset library?

Addon not enough I assume, there should be a cpp implementation via godot module in case of native support or some magic with MAUI integration

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions