Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macos and ios support #1

Open
rajveermalviya opened this issue Aug 2, 2022 · 4 comments
Open

macos and ios support #1

rajveermalviya opened this issue Aug 2, 2022 · 4 comments

Comments

@rajveermalviya
Copy link
Owner

rajveermalviya commented Aug 2, 2022

An ideal implementation would use AppKit for macOS and UIKit for iOS respectively.

@sparky4pro
Copy link

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 )

@rajveermalviya
Copy link
Owner Author

rajveermalviya commented Aug 30, 2022

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

gamen is 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, gamen does 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 gamen internally.

@sparky4pro
Copy link

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...

@gedw99
Copy link

gedw99 commented Sep 19, 2022

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants