Android porting thread.

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

Post Reply
Botje
Posts: 207
Joined: Thu Feb 28, 2013 5:48 pm

Android porting thread.

Post by Botje »

Hello everyone,

Those of you who frequent our IRC channel might know this already, but we have been working on an OpenGL ES2 renderer for the grim engine.
This renderer should enable Android (and iOS, later) devices to play Grim Fandango and EMI using hardware acceleration.
It can currently render almost everything in EMI, and most of Grim Fandango.

Update: this code has now been merged into ResidualVM master.Thanks for all your feedback!

There are two known issues remaining:
  • You cannot access the main menu.
    Lighting is not implemented yet.
If you would like to help with any of these issues, please respond in this thread or contact us on IRC.

See http://forums.residualvm.org/viewtopic.php?p=3215#p3215 for instructions on downloading.
Last edited by Guest on Tue Jul 15, 2014 3:18 pm, edited 14 times in total.
User avatar
YakBizzarro
Posts: 37
Joined: Wed May 18, 2011 8:10 am

Post by YakBizzarro »

On my LG-L5 it's very bugged: https://www.dropbox.com/sh/cbqvkj2snw5u59o/rI-fF5WM72

Edit: it's Grim Fandango italian retail version
hennymcc
Posts: 16
Joined: Sun Apr 01, 2012 10:23 pm

Post by hennymcc »

Great to hear that there is an OpenGL 2 port now.
Here are the results with a Samsung Galaxy S plus. You can compare them with those of software rendering given in the other android thread.

video:
- 11-15 fps

in-game:
- max. 15 fps, sometimes only 3-5 fps when manny is moving
- manny's movements are very choppy
- manny's head is not drawn correctly (mouth is missing, sometimes face texture is upside-down)

in both modes there is no vsync between the frames. The next frame is drawn in the middle of the previous one. As drawing sometimes seems to take a lot of time you can see how the frame is drawn line by line.
User avatar
Graxer
Posts: 453
Joined: Sat Sep 13, 2008 2:24 pm
Location: Scotland

Post by Graxer »

1. Xperia Arc S
2. Grim Fandango - 35-37FPS during game play, 57 during cut scenes.
3. It seems smooth to me.
4. Textures are all messed up (part of Manny's mouth on the left hand side of his head along with a bit of one eye, and no mouth at the front.) All the buttons are just grey squares, not sure if that is deliberate though. Also, FPS counter is very messed up looking and only just readable.

I cant progress far at all do to the lack of ability to access my inventory with any buttons. I'm not sure that there is multi-touch either. Although, as this topic is about the graphics renderer that is probably irrelevant.
prefect47
Posts: 2
Joined: Sun Mar 03, 2013 9:43 am

Post by prefect47 »

1. Asus Transformer Infinity TF700T
2. Grim Fandango (windows, english). 53 or 33FPS (*) during play and cutscenes, but seems to drop frames (it drops momentarily to <15 sometimes)
3. Very smooth.
4. Same as other posts; textures render in strange directions. They are also blocky on this device (large screen, high-res). And occassionally the lower part of the screen seems to "jump" to the right and back, noticed this both on the intro and during play.

(*) Can't tell if its a 3 or a 5 - the FPS counter seems to be corrupted. Or maybe the "5" is supposed to have a gap between the top line and the middle? :). There is also something to the right of the second decimal, looks like part of the top half of another digit.
Botje
Posts: 207
Joined: Thu Feb 28, 2013 5:48 pm

Post by Botje »

Thanks for the feedback so far!
I finally figured out the issue for low-end devices and uploaded a new APK.

I'm aware of the issue with the numbers, but don't really have an idea on how to fix it now, apart from ripping out the emergency fonts :) Unfortunately 1 and 4 look very similar, as do 3 and 5, but as long as everything feels smooth, that's good enough for now.

I also made the controls scale to the screen now, so everyone should be able to use them.

A word of explanation about the controls:
- the left clump is the arrow keys + run forward. You might need to slide your finger a very tiny bit for the hold to register, this is all quickly hacked up for testing..
- the right clump is pickup/use/{pageup,enter,pagedown}
- the top right button is 'i' for inventory.
Any suggestions on how to improve them are welcome, patches even more so :)

@YakBizzarro: huh, I hadn't even thought about devices with a smaller screen ... I'll try to find a device with a small screen to reproduce.
Jumba
Posts: 14
Joined: Sun Jan 29, 2012 5:48 am

Post by Jumba »

ASUS Nexus 7

33FPS more or less

Thanks for the work!

Any chance of rendering the 3D elements at a higher res? They seem quite low poly. Or maybe they could just use a bit of aa.
User avatar
somaen
ScummVM Developer
Posts: 376
Joined: Thu Apr 21, 2011 7:31 pm
Location: Trondheim, NO

Post by somaen »

The polygons are the way they are in the game-data, no quick way to interpolate more polygons. (Apart from Grim Fandango Deluxe moving ahead).

However, there is anti-aliasing in the desktop build of ResidualVM, I have no idea how hard it would be to do something similar in GLES though.
Botje
Posts: 207
Joined: Thu Feb 28, 2013 5:48 pm

Post by Botje »

Enabling anti-aliasing is fairly easy, but I'd need to see the impact on low to mid-end devices first.
Jumba
Posts: 14
Joined: Sun Jan 29, 2012 5:48 am

Post by Jumba »

Botje wrote:Enabling anti-aliasing is fairly easy, but I'd need to see the impact on low to mid-end devices first.
That would be great, all in good time. Perhaps later on you could consider 2 versions, or have some sort of config option for low/mid and high-end devices.
User avatar
Graxer
Posts: 453
Joined: Sat Sep 13, 2008 2:24 pm
Location: Scotland

Post by Graxer »

A couple more graphical bugs on my Xperia Arc S:

-When Glottis comes out of his shack the animation of him doing so occurs at the bottom left of the screen.
-When browsing though the inventory the cards have a black square background around their image. (Not sure about other items)

Also, I still can't get the running button to do anything at all. I can get to light up as if it is pressed, but it doesn't actually make Manny do anything differently.
hennymcc
Posts: 16
Joined: Sun Apr 01, 2012 10:23 pm

Post by hennymcc »

Now it is very fluent on my SGS plus, about 30-40 fps (at least I guess it, as the fps counter is not displayed correctly).

No noticeable graphical glitches.
I am not sure if it is correct that Eva's text is most of the times only displayed on the left side of the screen with many line-wraps.

Probably the menu-overlay (it has only a black background) and lighting for objects is not implemented yet.

Great job :D
henkp
Posts: 2
Joined: Sun Mar 10, 2013 10:30 pm

saving?

Post by henkp »

Hi all,

First of all, i really appreciate Botje's work on this.
On my xperia PRO (iyokan) CM10 the game is very fluent, 35fps with only the occasional drop. However, whenever I try to save, it crashes! Savepath is set to an existing writable folder on my SD-card. Any solutions to this? The game is very good for this device, since it has a hardware-keyboard :-)
User avatar
Graxer
Posts: 453
Joined: Sat Sep 13, 2008 2:24 pm
Location: Scotland

Re: saving?

Post by Graxer »

henkp wrote:Hi all,

First of all, i really appreciate Botje's work on this.
On my xperia PRO (iyokan) CM10 the game is very fluent, 35fps with only the occasional drop. However, whenever I try to save, it crashes! Savepath is set to an existing writable folder on my SD-card. Any solutions to this? The game is very good for this device, since it has a hardware-keyboard :-)
Saving crashed Residual on my Xperia Arc S too.
klusark
Posts: 23
Joined: Tue Mar 27, 2012 11:12 pm

Re: saving?

Post by klusark »

Graxer wrote:
henkp wrote:Hi all,

First of all, i really appreciate Botje's work on this.
On my xperia PRO (iyokan) CM10 the game is very fluent, 35fps with only the occasional drop. However, whenever I try to save, it crashes! Savepath is set to an existing writable folder on my SD-card. Any solutions to this? The game is very good for this device, since it has a hardware-keyboard :-)
Saving crashed Residual on my Xperia Arc S too.
The crashing saves are caused by saving of screenshots not being implemented yet on the OpenGLES backend, which the savegame code does not expect. It'll get fixed soon enough :)
Post Reply