Work in Progress: Bringing T-Engine 4 to iOS and Android

Moderator: Moderator

Message
Author
Rappler
Low Yeek
Posts: 6
Joined: Tue Mar 27, 2012 8:22 pm

Work in Progress: Bringing T-Engine 4 to iOS and Android

#1 Post by Rappler »

Hello all! In what little spare time I have these days I'm investigating what it will take to bring TE4 to mobile platforms, specifically tablets (although a phone works in a pinch :) ). I'm making this post to condense my findings on the topic and share with anyone else who may be interested.

iOS

I've rebuilt all the engine's dependent libraries (SDL-1.3+, sdl_ttf, sdl_mixer, sdl_image, THEIR dependencies, etc) from source, mostly from the latest releases with darkgod's additions foward ported as needed. Important note: top-of-trunk SDL contains new mobile-specific functionality for both graphics and the touch interface that will have a place in new T-Engine code.

While most of the libraries build "out-of-the-box" using Xcode 4.3.1 but you'll need to download a GLu replacement for OpenGL ES at least: http://code.google.com/p/glues/.

Apple won't allow LuaJit to run under iOS, but either the interpreted version or the standard Lua engine should work fine. I'm using the standard implementation because I figure it is more likely to work :)

Here are the final linking issues I've hit during the engine build:

- The latest versions of PhysFS (not the one included with the t-engine source) contains iOS support, but some custom work from the engine had to be ported in due to the newer version missing those symbols required by the engine.
- OpenGL ES also does not provide the following functions.. but, here are the fixes!

glOrtho: http://stackoverflow.com/questions/7131 ... z-values-f
glClearDepth: http://stackoverflow.com/questions/4704 ... ng-problem
glPush/PopAttrib: http://stackoverflow.com/questions/4657 ... -opengl-es

- Many symbols exported in SDL_compat.h are missing. Issues in the compatibility layer aren't unexpected, but I haven't had time to look into these:
SDL_WM_ToggleFullScreen
SDL_SetAlpha
SDL_ListModes
SDL_SetGamma
SDL_WM_SetCaption
SDL_EnableRepeatKey

I've also been able to package the engine's requisite file structure and I don't think there will be any issues there. Adding additional TE4 modules (ie InfiniteRoad) once the app is installed on a device would require the device to be jailbroken (!). Save games are large, yes, but iPads start at 16GB... plus there's always iCloud :)

Android

I haven't really started on this side of things, but the process is similar to iOS. Use the Android NDK to build everything. It provides a mechanism for native-only applications, so a Java wrapper isn't a strict requirement. The OpenGL ES and SDL issues apply to Android as well as iOS. I haven't looked at Android support in PhysFS yet.

Happy hunting! :)

yufra
Perspiring Physicist
Posts: 1332
Joined: Tue Jul 13, 2010 2:53 pm

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#2 Post by yufra »

Neat, keep us updated!
<DarkGod> lets say it's intended

Manipulative
Posts: 4
Joined: Sun Apr 01, 2012 3:57 pm
Contact:

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#3 Post by Manipulative »

Eager Android user here!

I'm using an Asus Transformer TF101, anything I can do to help?

Salkhir
Wayist
Posts: 27
Joined: Fri Nov 12, 2010 6:14 pm

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#4 Post by Salkhir »

How is the project coming along? I saw something in the newest Beta Regarding changes to the font format for 'Driod' Devices, just going to assume that is in relation to this?

Grey
Loremaster
Posts: 3517
Joined: Thu Sep 23, 2010 10:18 pm
Location: London, England
Contact:

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#5 Post by Grey »

The font is just a standard fixed width font that I suggested be used because it looks nicer than the Vera one used before (especially the @ symbol).
http://www.gamesofgrey.com - My own T-Engine games!
Roguelike Radio - A podcast about roguelikes

heavensblade23
Posts: 1
Joined: Sat Jun 30, 2012 2:20 am

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#6 Post by heavensblade23 »

I'd also be very interested in seeing this on the App Store.

Aravan
Posts: 1
Joined: Mon Jul 09, 2012 9:46 am

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#7 Post by Aravan »

Rappler wrote:I've also been able to package the engine's requisite file structure and I don't think there will be any issues there. Adding additional TE4 modules (ie InfiniteRoad) once the app is installed on a device would require the device to be jailbroken (!). Save games are large, yes, but iPads start at 16GB... plus there's always iCloud :)
Couldn't you use the iTunes sideloading functionality for modules etc.? Don't get me wrong, I'm on a jailbroken device, but it seems like a possible thing to implement.

Canderel
Sher'Tul
Posts: 1252
Joined: Mon Nov 24, 2003 2:31 pm
Location: South Africa

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#8 Post by Canderel »

Any.progress?

Also how is Darkgod's own adventures in this genre coming along? Personally i see this (tablets and phones) the direction roguelikes will get a strong.life again.

muso
Posts: 1
Joined: Thu Feb 28, 2013 10:43 pm

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#9 Post by muso »

Looks like this is an old thread now. Is it now dead in the water?

I'd support an Android / Ouya version on Kickstarter if it was feasible...

darkyr
Low Yeek
Posts: 8
Joined: Mon Feb 25, 2013 6:59 pm

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#10 Post by darkyr »

Just a small commentary: ToME is unable to work correctly on my netbook, Samsung N102S (bought a few months ago). Whereas a monolithic Nethack has no problem on my phone I guess the LUA stuff easily gets too heavy, and there is probably no hope of having ToME working on a standard phone. Maybe on very very expensive tablets but that's all.

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#11 Post by darkgod »

Well yes it requires a real computer, with a CPU and a GPU and all such things; I think it can be made to work on android & ios yes
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

Grey
Loremaster
Posts: 3517
Joined: Thu Sep 23, 2010 10:18 pm
Location: London, England
Contact:

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#12 Post by Grey »

muso wrote: I'd support an Android / Ouya version on Kickstarter if it was feasible...
I'd very strongly support an Android port :)
http://www.gamesofgrey.com - My own T-Engine games!
Roguelike Radio - A podcast about roguelikes

chezzo
Higher
Posts: 55
Joined: Thu Aug 16, 2012 10:52 pm
Location: Philadelphia, Pennsylvania, USA
Contact:

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#13 Post by chezzo »

It should be a matter of using OpenGL for android and compiling it, yeah? Easy!*

* By, "easy" I mean may be possible, but I would have no idea how to do it.

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#14 Post by darkgod »

It's veyr hard acually, but yeah "possible" :)
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

Zireael
Archmage
Posts: 449
Joined: Tue Jun 18, 2013 7:24 pm

Re: Work in Progress: Bringing T-Engine 4 to iOS and Android

#15 Post by Zireael »

You mean an Android port would actually be *possible*?

Post Reply