From 7116f4cf0545941df827462ac718d751f6b07f60 Mon Sep 17 00:00:00 2001 From: JupiterRider <60042618+JupiterRider@users.noreply.github.com> Date: Thu, 13 Apr 2023 18:46:45 +0200 Subject: [PATCH] Re-enable BMP and JPG support, add OpenGL ES 2.0 for desktop platforms, update README.md --- README.md | 6 +++--- raylib/cgo_darwin.go | 9 +++++---- raylib/cgo_freebsd.go | 9 +++++---- raylib/cgo_linux.go | 9 +++++---- raylib/cgo_openbsd.go | 9 +++++---- raylib/cgo_windows.go | 9 +++++---- raylib/config.h | 4 ++-- 7 files changed, 30 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 01b4eaa..14948f9 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,7 @@ You can also build binary in [MSYS2](https://msys2.github.io/) shell. * `opengl43` - uses OpenGL 4.3 backend * `opengl21` - uses OpenGL 2.1 backend (default is 3.3 on desktop) * `opengl11` - uses OpenGL 1.1 backend (pseudo OpenGL 1.1 style) +* `angle` - uses OpenGL ES 2.0 backend (can be used to link against [Google's ANGLE](https://github.com/google/angle)) ### Documentation @@ -69,10 +70,11 @@ Documentation on [GoDoc](https://godoc.org/github.com/gen2brain/raylib-go/raylib ```go package main -import "github.com/gen2brain/raylib-go/raylib" +import rl "github.com/gen2brain/raylib-go/raylib" func main() { rl.InitWindow(800, 450, "raylib [core] example - basic window") + defer rl.CloseWindow() rl.SetTargetFPS(60) for !rl.WindowShouldClose() { @@ -83,8 +85,6 @@ func main() { rl.EndDrawing() } - - rl.CloseWindow() } ``` diff --git a/raylib/cgo_darwin.go b/raylib/cgo_darwin.go index 7a4f7cc..4fb9c48 100644 --- a/raylib/cgo_darwin.go +++ b/raylib/cgo_darwin.go @@ -26,9 +26,10 @@ package rl #cgo darwin LDFLAGS: -framework OpenGL -framework Cocoa -framework IOKit -framework CoreVideo -framework CoreFoundation #cgo darwin CFLAGS: -x objective-c -Iexternal/glfw/include -D_GLFW_COCOA -D_GLFW_USE_CHDIR -D_GLFW_USE_MENUBAR -D_GLFW_USE_RETINA -Wno-deprecated-declarations -Wno-implicit-const-int-float-conversion -DPLATFORM_DESKTOP -#cgo darwin,opengl11 CFLAGS: -DGRAPHICS_API_OPENGL_11 -#cgo darwin,opengl21 CFLAGS: -DGRAPHICS_API_OPENGL_21 -#cgo darwin,opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_43 -#cgo darwin,!opengl11,!opengl21,!opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo darwin,opengl11,!angle CFLAGS: -DGRAPHICS_API_OPENGL_11 +#cgo darwin,opengl21,!angle CFLAGS: -DGRAPHICS_API_OPENGL_21 +#cgo darwin,opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_43 +#cgo darwin,!opengl11,!opengl21,!opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo darwin,angle CFLAGS: -DGRAPHICS_API_OPENGL_ES2 */ import "C" diff --git a/raylib/cgo_freebsd.go b/raylib/cgo_freebsd.go index 3451019..3f0c1a4 100644 --- a/raylib/cgo_freebsd.go +++ b/raylib/cgo_freebsd.go @@ -42,9 +42,10 @@ package rl #cgo freebsd,!wayland CFLAGS: -D_GLFW_X11 #cgo freebsd,wayland CFLAGS: -D_GLFW_WAYLAND -#cgo freebsd,opengl11 CFLAGS: -DGRAPHICS_API_OPENGL_11 -#cgo freebsd,opengl21 CFLAGS: -DGRAPHICS_API_OPENGL_21 -#cgo freebsd,opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_43 -#cgo freebsd,!opengl11,!opengl21,!opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo freebsd,opengl11,!angle CFLAGS: -DGRAPHICS_API_OPENGL_11 +#cgo freebsd,opengl21,!angle CFLAGS: -DGRAPHICS_API_OPENGL_21 +#cgo freebsd,opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_43 +#cgo freebsd,!opengl11,!opengl21,!opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo freebsd,angle CFLAGS: -DGRAPHICS_API_OPENGL_ES2 */ import "C" diff --git a/raylib/cgo_linux.go b/raylib/cgo_linux.go index 2481fc2..7edbbe2 100644 --- a/raylib/cgo_linux.go +++ b/raylib/cgo_linux.go @@ -41,9 +41,10 @@ package rl #cgo linux,!wayland CFLAGS: -D_GLFW_X11 #cgo linux,wayland CFLAGS: -D_GLFW_WAYLAND -#cgo linux,opengl11 CFLAGS: -DGRAPHICS_API_OPENGL_11 -#cgo linux,opengl21 CFLAGS: -DGRAPHICS_API_OPENGL_21 -#cgo linux,opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_43 -#cgo linux,!opengl11,!opengl21,!opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo linux,opengl11,!angle CFLAGS: -DGRAPHICS_API_OPENGL_11 +#cgo linux,opengl21,!angle CFLAGS: -DGRAPHICS_API_OPENGL_21 +#cgo linux,opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_43 +#cgo linux,!opengl11,!opengl21,!opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo linux,angle CFLAGS: -DGRAPHICS_API_OPENGL_ES2 */ import "C" diff --git a/raylib/cgo_openbsd.go b/raylib/cgo_openbsd.go index b3cd9c1..7b6bdaa 100644 --- a/raylib/cgo_openbsd.go +++ b/raylib/cgo_openbsd.go @@ -42,9 +42,10 @@ package rl #cgo openbsd,!wayland CFLAGS: -D_GLFW_X11 #cgo openbsd,wayland CFLAGS: -D_GLFW_WAYLAND -#cgo openbsd,opengl11 CFLAGS: -DGRAPHICS_API_OPENGL_11 -#cgo openbsd,opengl21 CFLAGS: -DGRAPHICS_API_OPENGL_21 -#cgo openbsd,opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_43 -#cgo openbsd,!opengl11,!opengl21,!opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo openbsd,opengl11,!angle CFLAGS: -DGRAPHICS_API_OPENGL_11 +#cgo openbsd,opengl21,!angle CFLAGS: -DGRAPHICS_API_OPENGL_21 +#cgo openbsd,opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_43 +#cgo openbsd,!opengl11,!opengl21,!opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo openbsd,angle CFLAGS: -DGRAPHICS_API_OPENGL_ES2 */ import "C" diff --git a/raylib/cgo_windows.go b/raylib/cgo_windows.go index b67627d..73d6273 100644 --- a/raylib/cgo_windows.go +++ b/raylib/cgo_windows.go @@ -26,9 +26,10 @@ package rl #cgo windows LDFLAGS: -lopengl32 -lgdi32 -lwinmm -lole32 #cgo windows CFLAGS: -D_GLFW_WIN32 -Iexternal -Iexternal/glfw/include -Iexternal/glfw/deps/mingw -DPLATFORM_DESKTOP -#cgo windows,opengl11 CFLAGS: -DGRAPHICS_API_OPENGL_11 -#cgo windows,opengl21 CFLAGS: -DGRAPHICS_API_OPENGL_21 -#cgo windows,opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_43 -#cgo windows,!opengl11,!opengl21,!opengl43 CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo windows,opengl11,!angle CFLAGS: -DGRAPHICS_API_OPENGL_11 +#cgo windows,opengl21,!angle CFLAGS: -DGRAPHICS_API_OPENGL_21 +#cgo windows,opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_43 +#cgo windows,!opengl11,!opengl21,!opengl43,!angle CFLAGS: -DGRAPHICS_API_OPENGL_33 +#cgo windows,angle CFLAGS: -DGRAPHICS_API_OPENGL_ES2 */ import "C" diff --git a/raylib/config.h b/raylib/config.h index fbc7a5b..02a5a4d 100644 --- a/raylib/config.h +++ b/raylib/config.h @@ -143,9 +143,9 @@ //------------------------------------------------------------------------------------ // Select the desired fileformats to be supported for image data loading #define SUPPORT_FILEFORMAT_PNG 1 -//#define SUPPORT_FILEFORMAT_BMP 1 +#define SUPPORT_FILEFORMAT_BMP 1 //#define SUPPORT_FILEFORMAT_TGA 1 -//#define SUPPORT_FILEFORMAT_JPG 1 +#define SUPPORT_FILEFORMAT_JPG 1 #define SUPPORT_FILEFORMAT_GIF 1 #define SUPPORT_FILEFORMAT_QOI 1 //#define SUPPORT_FILEFORMAT_PSD 1