From 032352a5ba0744fbd5d17084130b9b5626837160 Mon Sep 17 00:00:00 2001 From: Kyle Date: Sat, 11 May 2024 19:16:35 -0500 Subject: [PATCH 1/6] Update rlgl_cgo.go --- raylib/rlgl_cgo.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/raylib/rlgl_cgo.go b/raylib/rlgl_cgo.go index 0136791..3ad2e42 100644 --- a/raylib/rlgl_cgo.go +++ b/raylib/rlgl_cgo.go @@ -90,6 +90,11 @@ func Scalef(x float32, y float32, z float32) { C.rlScalef(cx, cy, cz) } +// MultMatrix - Multiply the current matrix by another matrix +func MultMatrix(m Matrix) { + C.rlMultMatrixf(MatrixToFloat(m)) +} + // Frustum . func Frustum(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) { cleft := C.double(left) From da79f1d8b66a27ce377653ba5509ce7885d82315 Mon Sep 17 00:00:00 2001 From: Kyle Rockman Date: Sat, 11 May 2024 19:38:23 -0500 Subject: [PATCH 2/6] fix function to actually work --- raylib/rlgl_cgo.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/raylib/rlgl_cgo.go b/raylib/rlgl_cgo.go index 3ad2e42..c27d357 100644 --- a/raylib/rlgl_cgo.go +++ b/raylib/rlgl_cgo.go @@ -92,7 +92,8 @@ func Scalef(x float32, y float32, z float32) { // MultMatrix - Multiply the current matrix by another matrix func MultMatrix(m Matrix) { - C.rlMultMatrixf(MatrixToFloat(m)) + f := MatrixToFloat(m) + C.rlMultMatrixf((*C.float)(&f[0])) } // Frustum . From 49242a59c92f1665931e0ff6ac36f5fc6d5f6f4e Mon Sep 17 00:00:00 2001 From: Kyle Date: Mon, 13 May 2024 07:15:11 -0500 Subject: [PATCH 3/6] Update rlgl_purego.go --- raylib/rlgl_purego.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/raylib/rlgl_purego.go b/raylib/rlgl_purego.go index ccb5029..9c6d3d1 100644 --- a/raylib/rlgl_purego.go +++ b/raylib/rlgl_purego.go @@ -16,6 +16,7 @@ var rlLoadIdentity func() var rlTranslatef func(x float32, y float32, z float32) var rlRotatef func(angle float32, x float32, y float32, z float32) var rlScalef func(x float32, y float32, z float32) +var rlMultMatrix func(m []float32) var rlFrustum func(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) var rlOrtho func(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) var rlViewport func(x int32, y int32, width int32, height int32) @@ -138,6 +139,7 @@ func initRlglPurego() { purego.RegisterLibFunc(&rlTranslatef, raylibDll, "rlTranslatef") purego.RegisterLibFunc(&rlRotatef, raylibDll, "rlRotatef") purego.RegisterLibFunc(&rlScalef, raylibDll, "rlScalef") + purego.RegisterLibFunc(&rlMultMatrix, raylibDll, "rlMultMatrix") purego.RegisterLibFunc(&rlFrustum, raylibDll, "rlFrustum") purego.RegisterLibFunc(&rlOrtho, raylibDll, "rlOrtho") purego.RegisterLibFunc(&rlViewport, raylibDll, "rlViewport") From b56bfca1e8a9c5c793bb986dafc8728a0bc86fbf Mon Sep 17 00:00:00 2001 From: Kyle Date: Tue, 21 May 2024 15:31:37 -0500 Subject: [PATCH 4/6] Update rlgl_purego.go correctly --- raylib/rlgl_purego.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/raylib/rlgl_purego.go b/raylib/rlgl_purego.go index 9c6d3d1..518b487 100644 --- a/raylib/rlgl_purego.go +++ b/raylib/rlgl_purego.go @@ -16,7 +16,7 @@ var rlLoadIdentity func() var rlTranslatef func(x float32, y float32, z float32) var rlRotatef func(angle float32, x float32, y float32, z float32) var rlScalef func(x float32, y float32, z float32) -var rlMultMatrix func(m []float32) +var rlMultMatrix func(m *float32) var rlFrustum func(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) var rlOrtho func(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) var rlViewport func(x int32, y int32, width int32, height int32) @@ -300,6 +300,12 @@ func Scalef(x float32, y float32, z float32) { rlScalef(x, y, z) } +// MultMatrix - Multiply the current matrix by another matrix +func MultMatrix(m Matrix) { + f := MatrixToFloat(m) + rlMultMatrixf(unsafe.Pointer(&f[0])) +} + // Frustum . func Frustum(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) { rlFrustum(left, right, bottom, top, znear, zfar) From 426bcb352915ec37cf4242661771399bd66cf7a2 Mon Sep 17 00:00:00 2001 From: Kyle Date: Wed, 22 May 2024 07:12:22 -0500 Subject: [PATCH 5/6] Fix typo --- raylib/rlgl_purego.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/raylib/rlgl_purego.go b/raylib/rlgl_purego.go index 518b487..53825b6 100644 --- a/raylib/rlgl_purego.go +++ b/raylib/rlgl_purego.go @@ -303,7 +303,7 @@ func Scalef(x float32, y float32, z float32) { // MultMatrix - Multiply the current matrix by another matrix func MultMatrix(m Matrix) { f := MatrixToFloat(m) - rlMultMatrixf(unsafe.Pointer(&f[0])) + rlMultMatrix(unsafe.Pointer(&f[0])) } // Frustum . From 4a4f1ef82ea81ce5521544d5f4a399f88a4e02cc Mon Sep 17 00:00:00 2001 From: Kyle Date: Wed, 22 May 2024 09:55:19 -0500 Subject: [PATCH 6/6] Remove purego implementation --- raylib/rlgl_purego.go | 8 -------- 1 file changed, 8 deletions(-) diff --git a/raylib/rlgl_purego.go b/raylib/rlgl_purego.go index 53825b6..ccb5029 100644 --- a/raylib/rlgl_purego.go +++ b/raylib/rlgl_purego.go @@ -16,7 +16,6 @@ var rlLoadIdentity func() var rlTranslatef func(x float32, y float32, z float32) var rlRotatef func(angle float32, x float32, y float32, z float32) var rlScalef func(x float32, y float32, z float32) -var rlMultMatrix func(m *float32) var rlFrustum func(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) var rlOrtho func(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) var rlViewport func(x int32, y int32, width int32, height int32) @@ -139,7 +138,6 @@ func initRlglPurego() { purego.RegisterLibFunc(&rlTranslatef, raylibDll, "rlTranslatef") purego.RegisterLibFunc(&rlRotatef, raylibDll, "rlRotatef") purego.RegisterLibFunc(&rlScalef, raylibDll, "rlScalef") - purego.RegisterLibFunc(&rlMultMatrix, raylibDll, "rlMultMatrix") purego.RegisterLibFunc(&rlFrustum, raylibDll, "rlFrustum") purego.RegisterLibFunc(&rlOrtho, raylibDll, "rlOrtho") purego.RegisterLibFunc(&rlViewport, raylibDll, "rlViewport") @@ -300,12 +298,6 @@ func Scalef(x float32, y float32, z float32) { rlScalef(x, y, z) } -// MultMatrix - Multiply the current matrix by another matrix -func MultMatrix(m Matrix) { - f := MatrixToFloat(m) - rlMultMatrix(unsafe.Pointer(&f[0])) -} - // Frustum . func Frustum(left float64, right float64, bottom float64, top float64, znear float64, zfar float64) { rlFrustum(left, right, bottom, top, znear, zfar)