Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrjul/estragonia
Estragonia: Avalonia in Godot
https://github.com/mrjul/estragonia
avalonia gamedev godot ui
Last synced: about 16 hours ago
JSON representation
Estragonia: Avalonia in Godot
- Host: GitHub
- URL: https://github.com/mrjul/estragonia
- Owner: MrJul
- License: mit
- Created: 2023-05-02T14:10:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-23T11:02:36.000Z (2 months ago)
- Last Synced: 2024-10-30T01:02:40.278Z (about 2 months ago)
- Topics: avalonia, gamedev, godot, ui
- Language: C#
- Homepage:
- Size: 1.33 MB
- Stars: 186
- Watchers: 4
- Forks: 5
- Open Issues: 2
-
Metadata Files:
- Readme: readme.md
- License: license.txt
Awesome Lists containing this project
README
# Estragonia: Avalonia in Godot
[![Avalonia + Godot](https://github.com/MrJul/Estragonia/blob/main/docs/av_plus_gd.png)](#)
[![NuGet](https://img.shields.io/nuget/v/JLeb.Estragonia)](https://www.nuget.org/packages/JLeb.Estragonia)
Estragonia is a bridge allowing the use of the powerful [Avalonia UI](https://github.com/AvaloniaUI/Avalonia) framework in the no less powerful [Godot](https://github.com/godotengine/godot) game engine!
It's GPU accelerated using Vulkan, which is the main renderer used in Godot 4.
## Quick Start
1. Have Godot 4.3.0 with .NET support installed.
2. Install the `JLeb.Estragonia` NuGet package inside your Godot C# project.
3. Initialize the Avalonia application using `UseGodot().SetupWithoutStarting()`.
4. Add a Godot `Control` node to your scene, assign it a script inheriting from `JLeb.Estragonia.AvaloniaControl` and populate its `Control` property with any valid Avalonia view.For a more detailed guide, see the [step by step instructions](https://github.com/MrJul/Estragonia/blob/main/docs/setup.md).
## Resources
For various things to know regarding compatibility, rendering and input handling, see [this document](https://github.com/MrJul/Estragonia/blob/main/docs/toknow.md).
Samples:
- [HelloWorld](https://github.com/MrJul/Estragonia/tree/main/samples/HelloWorld): a basic Avalonia-into-Godot setup.
- [GameMenu](https://github.com/MrJul/Estragonia/tree/main/samples/GameMenu): a functional game menu UI using the MVVM pattern, with controller support, UI animations and scaling.## License
The whole Estragonia project source code is under the [MIT License](https://github.com/MrJul/Estragonia/blob/main/license.txt).
Some specific licenses may apply to some assets used in the samples. See each sample for more information.## Video
https://github.com/MrJul/Estragonia/assets/1623034/7bcb12e4-0f0a-41c4-8dd8-71d8c80ede0b
From the [GameMenu sample](https://github.com/MrJul/Estragonia/tree/main/samples/GameMenu)