From 8d93d8445602bc41697e7ad7d09ef7c8bce35ebf Mon Sep 17 00:00:00 2001 From: stevenhowes <38082088+stevenhowes@users.noreply.github.com> Date: Sun, 12 Jun 2022 20:28:38 +0100 Subject: [PATCH] Allow scaling of entire window --- go.mod | 5 ++++- go.sum | 2 ++ goretro.go | 5 +++-- utils_texture.go | 4 ++-- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/go.mod b/go.mod index a9d8db8..bd37bdf 100644 --- a/go.mod +++ b/go.mod @@ -2,4 +2,7 @@ module github.com/stevenhowes/GoRetro go 1.17 -require github.com/veandco/go-sdl2 v0.4.10 +require ( + github.com/stevenhowes/PakGo v0.0.0-20220113222155-3617b0daa3c0 + github.com/veandco/go-sdl2 v0.4.10 +) diff --git a/go.sum b/go.sum index e190134..b2aeaf7 100644 --- a/go.sum +++ b/go.sum @@ -1,2 +1,4 @@ +github.com/stevenhowes/PakGo v0.0.0-20220113222155-3617b0daa3c0 h1:2B+TF/y2bKSFiIryww/IiokKVmFZYd7t8h3iqcFuKv0= +github.com/stevenhowes/PakGo v0.0.0-20220113222155-3617b0daa3c0/go.mod h1:L7pK9BbOuXj6fZtD0EtTPpqH9QBCldg4Sqh1wfSmduI= github.com/veandco/go-sdl2 v0.4.10 h1:8QoD2bhWl7SbQDflIAUYWfl9Vq+mT8/boJFAUzAScgY= github.com/veandco/go-sdl2 v0.4.10/go.mod h1:OROqMhHD43nT4/i9crJukyVecjPNYYuCofep6SNiAjY= diff --git a/goretro.go b/goretro.go index ac6382b..bffc385 100644 --- a/goretro.go +++ b/goretro.go @@ -14,6 +14,7 @@ var ViewPort struct { var Config struct { WindowSize VectorInt32 + Scale int32 TargetTicksPerSecond float64 DebugStatePrintSeconds float64 @@ -34,12 +35,12 @@ func Init() (*sdl.Renderer, *sdl.Window) { return nil, nil } - fmt.Printf("Created window %d x %d\n", Config.WindowSize.X, Config.WindowSize.Y) + fmt.Printf("Created window %d x %d\n", Config.WindowSize.X*int32(Config.Scale), Config.WindowSize.Y*int32(Config.Scale)) window, err := sdl.CreateWindow( "GoEscape", sdl.WINDOWPOS_UNDEFINED, sdl.WINDOWPOS_UNDEFINED, - Config.WindowSize.X, Config.WindowSize.Y, + Config.WindowSize.X*int32(Config.Scale), Config.WindowSize.Y*int32(Config.Scale), sdl.WINDOW_OPENGL) if err != nil { fmt.Println("initializing window:", err) diff --git a/utils_texture.go b/utils_texture.go index 8598a7d..fef60a1 100644 --- a/utils_texture.go +++ b/utils_texture.go @@ -36,9 +36,9 @@ func drawTexture( return renderer.CopyEx( tex, &sdl.Rect{X: sheetposition.X, Y: sheetposition.Y, W: size.X, H: size.Y}, - &sdl.Rect{X: int32(position.X), Y: int32(position.Y), W: size.X, H: size.Y}, + &sdl.Rect{X: int32(position.X) * Config.Scale, Y: int32(position.Y) * Config.Scale, W: size.X * Config.Scale, H: size.Y * Config.Scale}, rotation, - &sdl.Point{X: size.X / 2, Y: size.Y / 2}, + &sdl.Point{X: (size.X * Config.Scale) / 2, Y: (size.Y * Config.Scale) / 2}, sdl.FLIP_NONE) }