g3n / g3nd

G3N Game Engine Demo
BSD 2-Clause "Simplified" License
281 stars 31 forks source link

Mobiles #12

Closed ghost closed 5 years ago

ghost commented 6 years ago

Is mobile envisaged ?

If it run access the opengl engine we are good. In terms of integration with the GUI I am thinking of using flutter. It has an asynchronous resource loading pipeline and can accept opengl outputs.

Flutter and golang run on all desktops and mobiles with zero code changes today. you just need a simple binding wrapper written in dart to access golang. You just do the normal gomobile bind for mobile

leonsal commented 6 years ago

Maybe in the future. We are currently documenting the existing code base because we got a low score from goreportcards: https://goreportcard.com/report/github.com/g3n/engine

ghost commented 6 years ago

ok

ghost commented 6 years ago

You got an A+ now :)

Great work !

I think I can get this going on mobiles.

I just need a window to load it inside of which is not hard for Android and iOS. That means it will also run on Chromebooks.

Then only bit would be translating touch gestures. I think you can embed this inside flutter and let it handle all the complex touch gestures. This would mean matching up certain gestures to certain action in the golang code. At the moment all actions are a yes or no. You don't have any analog actions where the action has a percentage , like on a joypad ?

Anyway I think it's quite easy to get this working inside flutter. I suggest this because flutter has so much long term potential and is only getting better.

I can make a mini demo of a simple golang opengl test harness rendering inside it. That would be a good first step.

danaugrs commented 6 years ago

We definitely want to try to support mobile, and gomobile + Flutter seems like a great way to do it! I'll dig into it - let us know if you get something working!

And great point, we will have to add support for touch/analog inputs. I know Kivy (in Python) does cross-device input management particularly well - maybe we can take a look there for inspiration.

ghost commented 6 years ago

Deal.

The Google team are progressing fast on flutter for desktop :) They are using glfw but also talking about an SDL wrapper. So things are in flux. Everything runs on Linux and Mac. Windows is getting close. Only hold up is the Microsoft UWP stuff - just a little bit of extra stuff to make it a first class citizen on Windows.

So the only challenge is how to get the 3d window and the flutter forms together. I played with dsl to load a few opengl will does in a docking fashion too.

So as I try things out I will put up test harnesses on GitHub to show progress. I am definitely in over my head a bit but let's see

ghost commented 6 years ago

I meant SDL, not DSL :)

danaugrs commented 6 years ago

Awesome to hear! Pretty cool that they are using glfw, it will be simpler to integrate with g3n. Hopefully they add support for Windows soon. It would also be nice if it became an official Flutter project.

Keep me posted! 😄

danaugrs commented 5 years ago

Mobile support is being discussed here: https://github.com/g3n/engine/issues/114