Revisit Torque Port for Android Phones
by RealDecoy Inc · in General Discussion · 01/17/2010 (10:07 am) · 9 replies
Hello, I have done some searching and saw the initial feedback on this was that Android's SDK was limited to Java, so that pretty much ruled out a torque port without a complete rewrite.
However In recent months Google has released the NDK (native development kit) which allows you to write in C or C++ natively targeting the underlying linux OS.
They reccomend you use this to build a library of compute intensive code, and then make higher level calls to it from the java library.
What some current game developers are doing is writing their entire engine in NDK, and then simply handling the app task management, and input through the java layer in order to play nice with the Android UI.
For an example of what the android platform is capable of I suggest taking a look at the neocore demo (available on device, or via youtube). These phones have pretty solid hardware accelerated OpenGL ES 1.1 or 2.0 (in the case of the nexus one) and fast processors. They definately trump out the iphone and iphone 3G. The 3GS technically has a faster processor, but I'm not sure how it's GPU compares, or how much more or less efficient the APIs are at using the hardware.
Anyway, there is a ton of potential there, and I would think that taking the current iphone implimentation, and porting it to android would be fairly simple now that the NDK is out (I'm assuming the iphone is already using OpenGL ES or something similar, and is already scaled down for mobile, and using touch screen interface).
Any current plans from Garage Games to do a port to Android now that the tools are available? Or is this up to the community to port based on the source of the iphone version?
However In recent months Google has released the NDK (native development kit) which allows you to write in C or C++ natively targeting the underlying linux OS.
They reccomend you use this to build a library of compute intensive code, and then make higher level calls to it from the java library.
What some current game developers are doing is writing their entire engine in NDK, and then simply handling the app task management, and input through the java layer in order to play nice with the Android UI.
For an example of what the android platform is capable of I suggest taking a look at the neocore demo (available on device, or via youtube). These phones have pretty solid hardware accelerated OpenGL ES 1.1 or 2.0 (in the case of the nexus one) and fast processors. They definately trump out the iphone and iphone 3G. The 3GS technically has a faster processor, but I'm not sure how it's GPU compares, or how much more or less efficient the APIs are at using the hardware.
Anyway, there is a ton of potential there, and I would think that taking the current iphone implimentation, and porting it to android would be fairly simple now that the NDK is out (I'm assuming the iphone is already using OpenGL ES or something similar, and is already scaled down for mobile, and using touch screen interface).
Any current plans from Garage Games to do a port to Android now that the tools are available? Or is this up to the community to port based on the source of the iphone version?
#2
02/01/2010 (8:06 pm)
I vote for the Android port. I have to intentions to create for iPhone any time soon but I'm definitely interested in Android.
#3
03/11/2010 (6:40 am)
Yes i agree that a Andoid port would be very good.
#4
I just don't have the experience (or the source access to the iphone version) to attempt a port. But I'm sure the GG guys could kick that out in no time, and it would benefit them in giving them another platform to target.
03/11/2010 (7:01 am)
And very possible. since I'm assuming the iPhone version is already using OpenGL ES in the rendering engine, it would just be a matter of compiling the C source against the NDK (minor ports to libraries as needed) then writing the java wrapper to the compiled library (similar to how the desktop version compiles one DLL and then uses that DLL either for the app, or for the web client).I just don't have the experience (or the source access to the iphone version) to attempt a port. But I'm sure the GG guys could kick that out in no time, and it would benefit them in giving them another platform to target.
#5
Particularly in light of the Apple vs Adobe debarcle of late, we see Android apps becoming more relevant to the scope of our development plans
04/21/2010 (6:37 pm)
Another HUGE vote from us!Particularly in light of the Apple vs Adobe debarcle of late, we see Android apps becoming more relevant to the scope of our development plans
#6
I hope to see Torque for Android, but compatibility across all the different hardware versions is not gonna be fun to deal with.
04/21/2010 (10:00 pm)
I bet you'll seem more interest in non-iPhone platforms from most users after all the Apple drama in the last few weeks. :)I hope to see Torque for Android, but compatibility across all the different hardware versions is not gonna be fun to deal with.
#7
If there were Torque ports for Android, they'd have to limit them to a few popular devices if they want to avoid support hell. Even targeting iPhone OS means a lot of different devices (first generation of each iDevice, the split in performance at the second generation of iPhone and iPod touch, the new phone this summer, the iPod with matching updates, and of course the iPad).
It would be lovely, but I wouldn't want to be the person in charge :)
04/22/2010 (11:12 am)
There are many different screen resolutions (easily fixable), quite a diversity in sound capability (not impossible) and several different CPUs (ARM is not the only one you'll find). The last means you have no baseline CPU performance. Some Android devices which run non-ARM hardware might not even have any reasonable graphics chips. Another factor to make performance unpredictable. The devices might be able to play movies, but struggle at maintaining a decent framerate for games even at 800x480.If there were Torque ports for Android, they'd have to limit them to a few popular devices if they want to avoid support hell. Even targeting iPhone OS means a lot of different devices (first generation of each iDevice, the split in performance at the second generation of iPhone and iPod touch, the new phone this summer, the iPod with matching updates, and of course the iPad).
It would be lovely, but I wouldn't want to be the person in charge :)
#8
- Fast CPU
- Decent amount of RAM
- Hardware Accelerated Graphics with OpenGL ES support
- Stereo sound
- Minimum of QVGA resolution
- All were capable of getting 25FPS or greater in the NeoCore benchmark.
I doubt it would be as big of a problem to implement as you think. Sure there would definitely be incompatible devices, I agree with that 100%, but I think they would be a significant minority, and you could work around that by clearly publicizing compatibility requirements, (and having the engine do some basic checks at runtime for compatibility).
04/22/2010 (12:01 pm)
Well there is no reason why you can't publish hardware requirements. The majority of phones running android (and the ones holding the majority share) have more than enough hardware capability to support torque. It's just the non-phone devices, and the stragglers and odd brands. All the devices that I've had my hands on (HTC Magic, HTC Dream, HTC Hero, Nexus One, Samsung Galaxy, Motorola Droid) are all by reputable brands, and all have the exact same baseline features:- Fast CPU
- Decent amount of RAM
- Hardware Accelerated Graphics with OpenGL ES support
- Stereo sound
- Minimum of QVGA resolution
- All were capable of getting 25FPS or greater in the NeoCore benchmark.
I doubt it would be as big of a problem to implement as you think. Sure there would definitely be incompatible devices, I agree with that 100%, but I think they would be a significant minority, and you could work around that by clearly publicizing compatibility requirements, (and having the engine do some basic checks at runtime for compatibility).
#9
If anyone is interested in putting themselves in line for getting potentially getting paid to write a platform layer for TGB that would allow a game produced for iPhone to also run on Android, send me an email at dave.calabrese@cerulean-games.com and let me know your budget and time frame to do that. With that, I can send the final budget off to our client and if we get it - you get it!
Let me know. :)
PS: I'm posting this here instead of the jobs section first to give those of you who have been discussing it first dibs.
- Dave Calabrese
Cerulean Games, Inc.
Owner / Lead Developer
04/28/2010 (5:12 pm)
What is the status of writing a platform layer for Android? We are currently in negotiations for a project that would require exactly this to be done, and we need to get a few numbers lined up so we can pitch the budget to our client. If anyone is interested in putting themselves in line for getting potentially getting paid to write a platform layer for TGB that would allow a game produced for iPhone to also run on Android, send me an email at dave.calabrese@cerulean-games.com and let me know your budget and time frame to do that. With that, I can send the final budget off to our client and if we get it - you get it!
Let me know. :)
PS: I'm posting this here instead of the jobs section first to give those of you who have been discussing it first dibs.
- Dave Calabrese
Cerulean Games, Inc.
Owner / Lead Developer
Associate William Lee Sims
Machine Code Games