參考資訊:
https://github.com/veandco/go-sdl2
https://github.com/veandco/go-sdl2-examples
https://pkg.go.dev/github.com/veandco/go-sdl2#section-readme
初始化
$ go version go version go1.24.4 linux/amd64 $ go mod init main
main.go
package main import ( "os" "github.com/veandco/go-sdl2/sdl" "github.com/veandco/go-sdl2/gfx" ) func run() int { var window *sdl.Window var renderer *sdl.Renderer sdl.Init(sdl.INIT_EVERYTHING); defer sdl.Quit() window, _ = sdl.CreateWindow("main", 0, 0, 320, 240, sdl.WINDOW_SHOWN); defer window.Destroy() renderer, _ = sdl.CreateRenderer(window, -1, sdl.RENDERER_ACCELERATED); renderer.Clear() defer renderer.Destroy() gfx.StringColor(renderer, 100, 100, "Hello, world!", sdl.Color{R:255, G:255, B:255, A:255}) renderer.Present() sdl.Delay(3000) return 0 } func main() { os.Exit(run()) }
執行
$ go mod tidy $ go run -v main.go