GameEngine/pkg/glfw/adapters/window.go
Snoweuph 7489c466e6
Some checks failed
Quality Check / Linting (push) Successful in 11s
Quality Check / Static Analysis (push) Failing after 9s
Init
2024-09-16 20:13:50 +02:00

35 lines
621 B
Go

package glfw
import (
engine "dev.euph.git/snoweuph/game-engine/pkg/engine/ports"
_glfw "github.com/go-gl/glfw/v3.3/glfw"
)
type GLFWWindow struct {
window *_glfw.Window
}
func NewGLFWWindow(w int, h int, title string) (engine.Window, error) {
window, err := _glfw.CreateWindow(w, h, title, nil, nil)
if err != nil {
return nil, err
}
window.MakeContextCurrent()
return &GLFWWindow{
window: window,
}, nil
}
func (w GLFWWindow) Destroy(){
w.window.Destroy()
}
func (w GLFWWindow) SwapBuffers() {
w.window.SwapBuffers()
}
func (w GLFWWindow) ShouldClose() bool {
return w.window.ShouldClose()
}