blob: 41612044228d74ff31c9540b1c74aad1f510dc85 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
---
tags:
- golang
- ui
---
Some interesting libraries to look at that render their own pixels instead of relying on C/C++ bindings:
- Fyne
- Gio
What to look out for:
- How do they render to the screen? Do they use OpenGL, Vulkan or a software renderer? Do they use OS provided primitives?
- How do they handle events and propagate them through the UI?
- How do they manage positioning and sizing of UI elements?
- How do they define common elements such as buttons, lists, etc and how do they implement their behaviour.
- How do they make it cross-platform, if at all?
### Renderer
What kind of renderer to use? Build a software renderer or use hardware assisted rendering via openGL or Vulkan?
Gemini recommends to start with a software renderer and optimize later. Or if we want to learn more about graphics programming we start with OpenGL.
## Basics
- Window creation (canvas): check golang.org/x/mobile/app or go-gl/glfw.
- Event loop to handle events
- Basic shape drawing primitives
|