WIP: Monkey/mojo to Unity target

Monkey Archive Forums/Monkey Projects/WIP: Monkey/mojo to Unity target

Beaker(Posted 2011) [#1]
I've created a Unity target for monkey (and mojo):
Unity mojo example (uses unity browser plugin)

What is it good for?
a) Easily port your game to Wii/Xbox360/PS3 (if you've got the relevant licenses). Also offers alternative iOS/Android/web/pc/mac targets.
b) Add the 3rd dimension to your monkey app, currently using a render texture. I hope to expand on this area in the future.
c) Tap into the vast array of extensions, plugins, screen effects*, shaders/materials etc available for Unity.
d) Adds another easy debugging target to monkey (with fast build time).
e) Being tied to one language/tool is never ideal. You can now prototype in monkey and, if the project grows beyond its limits, finish off in Unity.

* screen effect example

Thanks to muddy_shoes for his port of Box2d as shown in the examples above.


therevills(Posted 2011) [#2]
Very... very... COOL!


AdamRedwoods(Posted 2011) [#3]
Wowee!

I'm assuming you need a Unity License for this to work at all.


CopperCircle(Posted 2011) [#4]
That's great!


Beaker(Posted 2011) [#5]
I'm assuming you need a Unity License for this to work at all.

Currently, yes. But, I will be working on a version for Unity standard, and I don't see any reason why this won't happen.

You will of course be restricted in some ways by the standard Unity license, notably:
1) No fullscreen post-processing (as seen in the 2nd example). You can roll your own to some degree.
2) No render to texture. This one is nice to have because it means you can wrap your monkey game around a 3d object. I can think of some nice uses for dynamic textures: in game tv screens, grid mesh ripple like in Geometry Wars etc.


Hima(Posted 2011) [#6]
This is incredible! I love you so much for this! <3<3

I'll gladly help donate for this project if you setup a donation box or something :)


Shinkiro1(Posted 2011) [#7]
Nice. Could you post the monkey code so we can get an idea how this has been done?


bruZard(Posted 2011) [#8]
AWESOME!!


Beaker(Posted 2011) [#9]
Shinkiro1 - the monkey code is just that in MonkeyBox2D as posted above. You compile in monk (or JungleIDE) as usual.


NoOdle(Posted 2011) [#10]
wow, that is impressive!


Felix(Posted 2011) [#11]
Awesome stuff!! But where's the download?


Raz(Posted 2011) [#12]
Blimey, well done :D


Soap(Posted 2011) [#13]
This is awesome. Well done!


Beaker(Posted 2011) [#14]
Thanks for your enthusiasm guys.

Felix - it's still WIP and I haven't decided what to do with it yet. I'm debating about selling it. If I do, I'll definitely provide some freebies to people who have contributed lots to the community: therevills & muddy_shoes come to mind.


Felix(Posted 2011) [#15]
Oh, I see... If it's reasonably priced I'd definitely shell out some bucks for this!
Do you have some 3D examples already?


Beaker(Posted 2011) [#16]
No, nothing concrete yet. Anything in particular you'd like to see added?


Soap(Posted 2011) [#17]
Please do sell it! I would buy day one whenever you made it public, and I would feel better using something which is commercially supported.


Skn3(Posted 2011) [#18]
wow amazing :D great stuff! How long did it take you?


Beaker(Posted 2011) [#19]
I'm not sure really. I originally started this in the early days of monkey, but got quite stuck trying to get my head round how monkey works, and probably still had some learning to do in Unity. I picked it up again a couple of weeks ago because I was between work projects, and it went relatively smoothly, partly cos I was in the zone, but also because Mark did such a good job.

I think both monkey and Unity are great, but the (relative) immaturity of monkey and the requirement of the projects I was working on meant I've spent more time using Unity than monkey. This unity compile target will enable me to not worry so much about starting projects in monkey.


Aman(Posted 2011) [#20]
Adding another cross platform tool as a target in monkey! This is nice can be pretty useful. Good job. Keep it up.


Beaker(Posted 2011) [#21]
If anyone has a finished or published monkey project they'd like to see unity-fied, and don't mind a spot of beta testing, drop me a line and I'll see what we can do when I get the Unity Standard version up and running.


Beaker(Posted 2011) [#22]
The Unity Standard version is coming along nicely. A happy byproduct of this version is that you can set a global DrawLine() thickness and texture for glowing lines (or whatever). Quite handy. :)


Hima(Posted 2011) [#23]
Great to hear the progress! I was wondering, how do you deal with drawing images, shape, etc? Render to textures only work on Pro, so I would like to know what you did to make it works for Unity Standard.


Beaker(Posted 2011) [#24]
I optimally build all the necessary meshes (using a single surface where possible) just before the frame is rendered. The Pro version doesn't rely on render2texture at all, but it does use the GL commands that are Pro only.


frank(Posted 2011) [#25]
Please open source it :) I'm all for paying, but i'm more for freedom. Let us all donate money for your time and put it on Google code / Github please. It'll stimulate more people to make targets for *whatever*.


Tibit(Posted 2011) [#26]
This is really cool! Nice work, looking forward to release :)


Hima(Posted 2011) [#27]
Thanks for the answer! I'd love to see more example with Monkey's sprite animation integrated though. Want to see if the performance is better than 2D plugins that are available right now on Unity asset store.

As for opensource, I agree with frank. I'm more willing to pay if it's free. This is because I'm already a Unity user and I've paid for 2D addons already. If this is free and opensource, I'll donate in order to help support the project and it'll help benefit other people as well :)


Beaker(Posted 2011) [#28]
Amon posted on the Unity forum:
http://forum.unity3d.com/threads/115880-How-Using-the-Monkey-Language-with-Unity


frank(Posted 2011) [#29]
@Beaker what do you think about open source? :) Just curious what your stance is towards it!


Beaker(Posted 2011) [#30]
I'm all for open source. But people have to make a living somewhere.

This is all still up the air for now, because (although he gave the ok to make it) Mark will have to approve this and make sure there is a mechanism in place so that it doesn't infringe on his livelyhood.


Kieryn(Posted 2011) [#31]
Wow. Awesome. I would very likely purchase a licence providing you can target Unity standard... I can't afford Unity Pro at this point :-)


samowitsch(Posted 2012) [#32]
Any news here?


Rushino(Posted 2012) [#33]
Omg. Incredible will certainly be useful !


Skn3(Posted 2012) [#34]
Wow very impressive stuff beaker! How much work is involved to get mojo's features to map to unity features?


Beaker(Posted 2012) [#35]
Nothing much to report. I havent touched this project in quite a while and I'm not sure it would even work on newer versions of monkey without some serious tweaking.

skn3 - it did take a lot of twiddling to get it all working correctly in Unity, but it maps pretty smoothly because you can build meshes and stuff in Unity as you would in Blitz3D. Also, Mark had already built a sort of template for this in the '3D only' targets (XNA, iOS etc).


fictorial(Posted 2013) [#36]
Great work so far on this!

Do you have anything new to report on this?

If you aren't working on it actively, why not open it up for us to contribute to?

Thanks!


programmer(Posted 2014) [#37]
Is there any news?