gamen
gamen copied to clipboard
macos and ios support
Does gamen try to be a backbone for all kinds of applications that need a ui, or is it just for games? How does it differ from nuxui? Or other frameworks/engines? ( https://github.com/nuxui/nuxui )
I feel like I have already answered this in this reddit comment so I am going to link it here. (though feel free to comment back here or above mentioned matrix room)
https://www.reddit.com/r/golang/comments/wz49hp/comment/im31jya/?utm_source=share&utm_medium=web2x&context=3
gamenis just a window handling library, it is comparable to glfw & winit.GUI toolkits like fyne and Gio internally use window handling to get a window on the screen, handle mouse & keyboard events captured by that window, setting size of the window, and many more,
gamendoes all that by dealing with platform specific APIs for you.fyne uses glfw on desktop and (afaik) go-mobile for ios/android support & Gio rolls its own.
gamen's goal is to provide a single api for all platforms.It's definitely not to be used directly by your next todo app, but a GUI toolkit or a Game can use
gameninternally.
Thank you for your answer.
Looked at the gamen code a bit, and it might be that for macOS and iOS some things in gamen are not needed, as these operating systems do not need a "main event message loop" to work...
Hey @rajveermalviya Hope all is well !!
This looks really cool...
I am happy to help test on IOS and Mac is needed.
cd gamen/examples/cursor_icons && go build . && ./cursor_icons
# github.com/rajveermalviya/gamen/examples/cursor_icons
./main.go:16:20: undefined: display.NewDisplay
./main.go:22:20: undefined: display.NewWindow
make: *** [run-cursor] Error 2
gamen make run-handling_close
cd gamen/examples/handling_close && go build . && ./handling_close
# github.com/rajveermalviya/gamen/examples/handling_close
./main.go:15:20: undefined: display.NewDisplay
./main.go:21:20: undefined: display.NewWindow
make: *** [run-handling_close] Error 2
gamen make run-hello
cd gamen/examples/hello && go build . && ./hello
# github.com/rajveermalviya/gamen/examples/hello
./main.go:17:20: undefined: display.NewDisplay
./main.go:23:20: undefined: display.NewWindow
make: *** [run-hello] Error 2
gamen make run-multiwindow
cd gamen/examples/multiwindow && go build . && ./multiwindow
# github.com/rajveermalviya/gamen/examples/multiwindow
./main.go:15:20: undefined: display.NewDisplay
./main.go:27:21: undefined: display.NewWindow
make: *** [run-multiwindow] Error 2
gamen make run-wgpu_poll
cd gamen/examples/wgpu_poll && go build . && ./wgpu_poll
# github.com/rajveermalviya/gamen/examples/wgpu_poll
./main.go:80:33: undefined: getSurfaceDescriptor
./main.go:214:20: undefined: display.NewDisplay
./main.go:220:20: undefined: display.NewWindow
make: *** [run-wgpu_poll] Error 2
gamen make run-wgpu_wait
cd gamen/examples/wgpu_wait && go build . && ./wgpu_wait
# github.com/rajveermalviya/gamen/examples/wgpu_wait
./main.go:80:33: undefined: getSurfaceDescriptor
./main.go:214:20: undefined: display.NewDisplay
./main.go:220:20: undefined: display.NewWindow
make: *** [run-wgpu_wait] Error 2