Residual/Grime/GRIM FANDANGO

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

Moderator: ScummVM Team

Post Reply
Gamemakerman
Posts: 10
Joined: Sun May 18, 2008 11:16 pm

Post by Gamemakerman »

I got the 0.0.6svn source code and compiled it for Debian PowerPC(PPC) on my Playstation 3. It actually works pretty well considering that the PS3 doesnt allow access to the GPU.

The framerate is about 8-10 fps, but all the cinematics are 100% fine. There are some odd texturing problems, but that can be fixed by turning off the gl_zbuffer mode. Turning that off will give the screen a blue overlay, but all texturing is working. Sound is also spot on.

Loading a game doesnt work either, but atleast it kinda runs alright.

Some screens:

Image
Image
Image
User avatar
ezekiel000
Posts: 443
Joined: Mon Aug 25, 2008 5:17 pm
Location: Surrey, England

Post by ezekiel000 »

Those are some quite interesting graphics errors :)

It's great that the changes in the subtitle code yesterday fixed the crashes I was experiencing with residual. I've got to say I never thought the crashes were anything to do with the subtitle code as I have the subtitles turned off, I guess that option isn't actually functional at the moment.

Just a thought was the lip sync from the original engine as abrupt or is it something that is still being worked on?
User avatar
MeddlingMonk
Posts: 221
Joined: Wed Jan 21, 2009 10:06 pm

Post by MeddlingMonk »

I think pretty much everything is still be working on with Residual.

As for the funky graphics with Gamermakerman's Debian build...I can't help but notice that the window's title bar announces that the graphics are being rendered in software mode. Assuming that OpenGL is even available on that system, try setting soft_renderer to FALSE and see what happens. It'll probably crash even if you do have OpenGL, given the usual issues with Linux and video drivers, but if it doesn't it should not only straighten out the graphics but improve framerate.
User avatar
bobdevis
Posts: 567
Joined: Fri Jan 16, 2009 10:52 am

Post by bobdevis »

As far as Grim goes, adding real hardware OpenGL really doesn't seem like a big priority. Any somewhat modern PC should be waaay more then capable to do those simple graphics in software mode.
I have been experimenting with Grim in a virtual machine (XP@VirtualBox) and apart from sound glitches everything is totally smooth without hardware DirectX.

Those 'usual' issues with video drivers are pretty much gone btw. If you go for Ubuntu, everything is installed with a couple of mouse clicks.
User avatar
MeddlingMonk
Posts: 221
Joined: Wed Jan 21, 2009 10:06 pm

Post by MeddlingMonk »

I think you're a little too sanguine about proprietary drivers and Linux. And more than a little about software rendering when the weirdness is there for all to see in those screenshots.
User avatar
bobdevis
Posts: 567
Joined: Fri Jan 16, 2009 10:52 am

Post by bobdevis »

Isn't the problem of those screen shots that Residual is not interpreting the game files correctly yet? That has nothing to do with the system's OpenGL engine here as I understand it.


Anyways, about those proprietary drivers;
When I started with Linux in about 2003, getting ATI to work was a complete nightmare and made your system unstable IF it worked at all. Nvidia was better, but you needed to manually compile (and recompile after every kernel update) the driver wrapper.

Now, with Ubuntu you just get a popup dialogue saying you need proprietary drivers, you can install them though that dialogue and run them (with Nvidia, with zero problems in my experience). I haven't tried ATI drivers in a long while I admit. There are however OSS drivers for ATI now that do OpenGL except for the latest models. How how well the proprietary R600/R700 class ATI drivers work, I do not know. Perhaps someone else here has experience with them.
User avatar
eriktorbjorn
ScummVM Developer
Posts: 3525
Joined: Mon Oct 31, 2005 7:39 am

Post by eriktorbjorn »

MeddlingMonk wrote:I think you're a little too sanguine about proprietary drivers and Linux. And more than a little about software rendering when the weirdness is there for all to see in those screenshots.
I can reproduce the software renderer glitch on my Linux box (Intel CPU) if I deliberately sabotage gl_convertRGB_to_5R6G5B8A() in engine/tinygl/image_util.cpp. Right now it says

Code: Select all

        p2[3 * i + 1] = pixel >> 8;
        p2[3 * i + 0] = pixel & 0xff;
        p2[3 * i + 2] = p[3];
but if I change the 1 to 0 and the 0 to 1, it looks pretty much like the Gamemakerman's screenshot. Perhaps there's some platform-specific problem in the way textures are loaded? I don't really know anything about how Residual works...

Edit: I do not, of course, propose that as a bugfix for the problem. I was merely trying to understand how there could be a colour problem with the actors but not with the backgrounds.
User avatar
MeddlingMonk
Posts: 221
Joined: Wed Jan 21, 2009 10:06 pm

Post by MeddlingMonk »

I think you're probably right about it being platform-specific, with a sneaky suspicion Residual is a partial culprit since it's so alpha. Still, it was being run in software mode so I'd be really interested in what good, if any, making the config change I suggested makes for him.

As for the Ubuntu fans (as I'm interpreting the remarks)...a graphical package management system isn't exactly unique to that distro, but the point made that proprietery drivers have become easier to get and use is valid. That's true for any distro when there's someone willing to maintain the driver packages. The situation still is not perfect. Hence the glitches being discussed here. I doubt that switching from Debian to Ubuntu would solve the issues. The other guy may simply not have the necessary proprietary drivers installed. But he might. I doubt that Debian itself is the problem except maybe insofar as drivers may be involved.

I suspect that as Residual gets more mature, these sort of issues will be resolved. I suppose that maybe a big part of the trouble lies in the fact that GF was written for Windows and DirectX and getting the game data to be rendered correctly in alien environments is going to take time.

Oh, and eriktorbjorn, I think the reason the backgrounds are rendered correctly is just because they're flat images instead of 3D models. Another reason to suspect a driver or settings issue (and not color depth, say).
aquadran
ScummVM Developer
Posts: 110
Joined: Wed Sep 21, 2005 7:00 pm

Post by aquadran »

I made fix into software renderer code which eriktorbjorn suggested. Please try it now. Mesa software opengl still will be broken.
zorbid
Posts: 66
Joined: Sun Nov 27, 2005 6:41 pm

Post by zorbid »

Since TinyGL seems problematic, have you already thought of porting Residual to OpenGL ES?

Most mobile platform powerful enough to run GF support it by now, and there is an ES -> OpenGL wrapper for desktops (Win XP, OS X and Linux: http://sourceforge.net/projects/dgles ).
User avatar
eriktorbjorn
ScummVM Developer
Posts: 3525
Joined: Mon Oct 31, 2005 7:39 am

Post by eriktorbjorn »

zorbid wrote:and there is an ES -> OpenGL wrapper for desktops
On my Linux box, Residual's OpenGL backend is actually a lot slower (to the point of being virtually useless) than the TinyGL backend. I imagine an ES -> OpenGL wrapper would have the same problem.
aquadran
ScummVM Developer
Posts: 110
Joined: Wed Sep 21, 2005 7:00 pm

Post by aquadran »

zorbid wrote:Since TinyGL seems problematic, have you already thought of porting Residual to OpenGL ES?

Most mobile platform powerful enough to run GF support it by now, and there is an ES -> OpenGL wrapper for desktops (Win XP, OS X and Linux: http://sourceforge.net/projects/dgles ).
TinyGL is not problematic, it's simple and relative easy to adopt to own purposes. Using OpenGL or OpenGL ES is not really good chooice as Grim Fandango not using pure 3d gfx. it's mix with 3d and a lot 2d gfx. Using 2d operations with opengl really slow down and especialy when accessing zbuffer on some gfx drivers.
Pirateguybrush
Posts: 39
Joined: Mon Apr 06, 2009 9:48 pm

Post by Pirateguybrush »

As a little personal project I've been interested in polishing up a couple GF models. At this stage I'm not going to try and put them back in the game or anything, I'd just like to do a little fanart or something. While I could probably start from scratch, having the original models to use as reference would be an enormous help. I'd really appreciate it if someone can help me work out how to take them from the 3do format they're in and convert them to something Max/Maya readable. Seeing as Residual can read the format, any chance you'd be able to help me out? I have a program that can rip 3d models directly from DirectX 9 applications, so even if there's a quick and dirty hack to run Residual under DX9 (doesn't have to look pretty or be functional gameplay-wise) that would be a great help.
User avatar
ezekiel000
Posts: 443
Joined: Mon Aug 25, 2008 5:17 pm
Location: Surrey, England

Post by ezekiel000 »

3do is one of the formats Dark Forces 2: Jedi Knight uses and that has quite a big modding community, don't know if that helps.
Pirateguybrush
Posts: 39
Joined: Mon Apr 06, 2009 9:48 pm

Post by Pirateguybrush »

Thanks for the tip, ezikiel. It helped as far as it let me find a viewer, but the only things I can find editor-wise are JK-specific and require JK to be installed. The viewer I found isn't using a new enough DX version for me to capture anything from it, and has no export features. Oh, and I can only work with models from the demo, it appears the full game uses a newer/different/encrypted format.
Post Reply