Best Monkey 2D and GUI libraries..

Monkey Forums/Monkey Programming/Best Monkey 2D and GUI libraries..

AaronK(Posted 2014) [#1]
Hi guys. I've been away from the Monkey scene for a while now and I come back and see that things have changed a lot!

Could someone give me a current summary of the best UI and game toolkit libraries that are around for Monkey right now?

The former is the most important to me as I'm looking to do a Mobile application (non game) so would need all the usual culprits like buttons, lists, dialogs, panels, custom controls and they'd need to be skinnable in some way either through configuration or owner draw capabilities with font support etc etc.

Many thanks
Aaron


AaronK(Posted 2014) [#2]
BTW: I have just found Ignition X which is looking nice, but doesn't anyone know if it supports multiple resolutions for both screen and assets? I'd like to be able to create a game/app where I just worked in a set internal resolution regardless of the actual device resolution. Additionally, the engine would need to be able to load high-res versions of assets on devices/resolutions that it would look better on.


mdgunn(Posted 2014) [#3]
Hi,

My suggestions would be:-
- fantomEngine (http://www.fantomgl.com/) - good framework but no GUI controls.
- diddy - some say not exactly a full framework (or maybe this is inaccurate now) but has some GUI support.
- Ignition X - I have not personally tried it - but it looks to be a really good framework with some support for UI controls. Downside is that it costs extra money which is absolutely fine if you value your own time (and so saving some) and you are happy in the monkey ecosystem.

I wrote this very simple dice rolling APP with fantomEngine (partly as an excuse to try out doing a app UI). https://play.google.com/store/apps/details?id=com.spectralwings.instantdice.

I originally also wanted a GUI I could integrate with fantomEngine and was pursuing integration of MyGUI (used to be Challenger GUI) as it was simple enough that I thought I might be able to make it work, yet had a good feature set (e.g. charts, simple table in addition to buttons, scrollbars etc.).

Unfortunately MyGUI didn't support autoscaling resolutions. I started trying to make it work but in the end decided for that app that I didn't really need a full GUI and just did simple 'check-boxes' with fantomEngine.

The author of MyGui seems to have disappeared now and last time I checked the site was offline. He had had autoscaling working in an earlier version (Challenger GUI) but I could not find source for that. Someone else also stated they had got auto-scaling working in an earlier version. So it sounds like in principle it would work if you want to put in the time. If you wanted to pursue it I have a copy of MyGui here on my DropBox (not a permanent link)
https://www.dropbox.com/s/xcp1nnd5rr8e61j/MyGui-Module.zip?dl=0

Regards,

Michael


Nobuyuki(Posted 2014) [#4]
time to toot my own horn

SimpleUI: http://www.monkey-x.com/Community/posts.php?topic=6132

With SimpleUI you can get the widgets to appear exactly the way you want it. Input is agnostic as well, so in addition to touch input, you can also specify custom InputPointers which can trigger widgets. I've also made a framework for games but cannot recommend it (because it isn't even public!)


AaronK(Posted 2014) [#5]
Thanks mdgunn for the thorough reply, I'll check out all your suggestions. And Nobuyuki, I'll take a look at yours too.

Thanks


AndroidAndy(Posted 2014) [#6]
and don't forget Ziggy's junglegui http://www.monkey-x.com/Community/posts.php?topic=3253 samples here:

http://www.jungleide.com/samples/junglegui04/MonkeyGame.html
http://www.jungleide.com/samples/junglegui05/MonkeyGame.html
http://www.jungleide.com/samples/junglegui06/MonkeyGame.html
http://www.jungleide.com/samples/junglegui07/MonkeyGame.html
http://www.jungleide.com/samples/modman/MonkeyGame.html


GW_(Posted 2014) [#7]
FYI. junglegui is not free.


ziggy(Posted 2014) [#8]
junglegui is free and open source.
http://code.google.com/p/junglegui/


GW_(Posted 2014) [#9]
junglegui is free and open source.

But the font builder/editor is not free, which negates it usefulness. Unless my info is out of date.


mdgunn(Posted 2014) [#10]
Kinda wish Font Machine was free to all (I have Jungle IDE so own it anyway).

As others have said JungleGUI and SimpleUI are both good too.

JungleGUI is probably the most 'designed' UI toolkit available though I'm not sure it had all the controls that some others had. I think the focus being on getting solid underlying objects and mechanisms to build on. Kinda windows like event driven if I remember rightly?

SimpleUI also good if you need a simple UI (!) and think you would probably skin up your own graphics. May be likely if you are considering multiple targets such as various mobile targets.

I think both have good enough samples that you can download and assess fairly quickly.

You may want to consider font handling, auto-scaling and integration with other frameworks (e.g. diddy or fantomEngine).

Cheers,

Michael


ziggy(Posted 2014) [#11]
But the font builder/editor is not free, which negates it usefulness. Unless my info is out of date.
The font module is free and open source, and the GUI library includes free pre-built fonts, so no need to pay naything to use it. That said, if you want to use the commercial FontMachine editor to change the GUI skin with your own fonts, and don't want to make a custom loader for any other format into FontMachine, than yes, you can use the commercial FontMachine editor.


impixi(Posted 2014) [#12]
I actually bought Jungle IDE specifically because the FontMachine editor came bundled with it. (I don't use Jungle IDE). And it was worth it, IMO. I think there was mention of it becoming a separate product but this never eventuated. Ziggy?

Back on topic: Ignition was very good when I looked into it a year or two ago. And apparently it has been significantly updated / improved since then.

You could possibly code your own UI in the amount of time it would take to learn somebody else's tools? I recently "ported" the fundamentals of BlitzMax's "gadget-based" MaxGUI and associated Event-handling systems (atop Mojo). It worked surprisingly well and only took a few days. Good coding practice in any case...