commit a19d3ebc7101128e01755d3ddc7b7c9f1653e5cf Author: Lukas Gau Date: Tue Jul 22 13:11:55 2025 +0200 init diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..cd2026d --- /dev/null +++ b/go.mod @@ -0,0 +1,8 @@ +module bosdoom + +go 1.22.2 + +require ( + github.com/go-gl/gl v0.0.0-20231021071112-07e5d0ea2e71 // indirect + github.com/go-gl/glfw v0.0.0-20250301202403-da16c1255728 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..a70b518 --- /dev/null +++ b/go.sum @@ -0,0 +1,4 @@ +github.com/go-gl/gl v0.0.0-20231021071112-07e5d0ea2e71 h1:5BVwOaUSBTlVZowGO6VZGw2H/zl9nrd3eCZfYV+NfQA= +github.com/go-gl/gl v0.0.0-20231021071112-07e5d0ea2e71/go.mod h1:9YTyiznxEY1fVinfM7RvRcjRHbw2xLBJ3AAGIT0I4Nw= +github.com/go-gl/glfw v0.0.0-20250301202403-da16c1255728 h1:Ak0LUgy7whfnJGPcjhR4oJ+THJNkXuhEfa+htfbz90o= +github.com/go-gl/glfw v0.0.0-20250301202403-da16c1255728/go.mod h1:fOxQgJvH6dIDHn5YOoXiNC8tUMMNuCgbMK2yZTlZVQA= diff --git a/main.go b/main.go new file mode 100644 index 0000000..b8f4e57 --- /dev/null +++ b/main.go @@ -0,0 +1,43 @@ +package main + +import ( + "runtime" + + "github.com/go-gl/glfw/v3.2/glfw" +) + +const ( + width = 500 + height = 500 +) + +func main() { + runtime.LockOSThread() + + window := initGlfw() + defer glfw.Terminate() + + for !window.ShouldClose() { + // TODO + } +} + +func initGlfw() *glfw.Window { + if err := glfw.Init(); err != nil { + panic(err) + } + + glfw.WindowHint(glfw.Resizable, glfw.False) + glfw.WindowHint(glfw.ContextVersionMajor, 4) + glfw.WindowHint(glfw.ContextVersionMinor, 1) + glfw.WindowHint(glfw.OpenGLProfile, glfw.OpenGLCoreProfile) + glfw.WindowHint(glfw.OpenGLForwardCompatible, glfw.True) + + window, err := glfw.CreateWindow(width, height, "Conway's Game of Life", nil, nil) + if err != nil { + panic(err) + } + window.MakeContextCurrent() + + return window +}