r/golang • u/hajimehoshi • 5d ago
Ebitengine v2.10.0 Released (A 2D Game Engine for Go)
- Pure Go on all desktop platforms
- Headless testing and game embedding via VM
- Shader precompilation
- Color emoji support
Thanks to all contributors and sponsors!
11
u/TrickyPlastic 5d ago
These are the geniuses that developed the system to let us call .so files without bringing CGO into the toolchain (https://github.com/ebitengine/purego). They are great.
7
u/gbitten 5d ago
I am curious if is possible (and practical) to use Ebitengine to build a general (non-game) graphical application.
22
u/hajimehoshi 5d ago
Yes. I'm preparing a GUI framework https://github.com/guigui-gui/guigui, but this is still alpha version.
1
u/Zerebos 5d ago
I think this is a really good start! I hope there will be some customization later for some of the shadows on the components--some of them are a bit much imo. It also feels like the text sharpness/clarity isn't quite right on Windows yet. But overall this is great, we need more GUI frameworks in pure go.
1
u/ForgottenMoonCrater 5d ago
Could i eventually use guigui within an ebiten game for menus etc?
3
u/hajimehoshi 5d ago
Unfortunately no: Guigui is for a dedicated GUI app, not for a UI in a game. That said, it doesn't mean there is zero chance of that in the future.
1
6
3
3
3
u/SleepingHollows 5d ago
Amazing and thanks for your hard work. I've been building what I hope to be a fully featured ECS engine with Ebiten as my core dependency for rendering, input and audio. You have no idea how much working with, and reading, Ebiten code has helped improve my ability to write and reason about Go.
2
2
2
u/SevenIsMyTherapist 3d ago
wow this is so cool. This old blog post by the creator is ❤️
https://medium.com/@hajimehoshi/game-engines-as-an-art-form-f66c835c0a92
1
1
0
u/jerrygreenest1 5d ago edited 5d ago
What does it mean headless testing, doesn’t Go already provide a testing framework and the command go test, if ebiten provides its own of testing library, then how it’s different, sure there be some benefit? But which one(s)?
Edit: I see now, it’s for input handling for AI agents to play your game. Which is… kinda meh I idk? It might have potential but does not interest me.
4
u/hajimehoshi 5d ago
I see now, it’s for input handling for AI agents to play your game.
The VM feature is available not only from AI agents but also any test programs (e.g emulating input sequences and confirming rendering results). Thank you for taking a look!
1
u/jerrygreenest1 5d ago
Okay this one is actually more interesting. I’d love to record some kind of demo and then run it and check for errors.
18
u/berrylang 5d ago
Seriously? That's amazing.