Cxbx-Reloaded / game-compatibility

Cxbx-Reloaded game compatibilty list, using GitHub issues
GNU General Public License v2.0
115 stars 29 forks source link

Project Gotham Racing 2 [MS-075] [1.05] #1103

Open mnadareski opened 3 years ago

mnadareski commented 3 years ago

Using build 8087b15:

Notable messages:

[0x8570] INFO : VTXSH   Please report that Project Gotham Racing 2 shows the following message:
LOG_TEST_CASE: FVF without position
In XboxVertexShaderFromFVF (D:\a\Cxbx-Reloaded\Cxbx-Reloaded\src\core\hle\D3D8\XbVertexShader.cpp line 130)
[0x8570] INFO : VTXSH   Please report that Project Gotham Racing 2 shows the following message:
LOG_TEST_CASE: Unassigned Xbox vertex shader!
In GetXboxVertexShader (D:\a\Cxbx-Reloaded\Cxbx-Reloaded\src\core\hle\D3D8\XbVertexShader.cpp line 268)
[0x8570] INFO : VTXSH   Please report that Project Gotham Racing 2 shows the following message:
LOG_TEST_CASE: Xbox should always have a VertexShader set (even for FVF's)
In GetXboxVertexAttributeFormat (D:\a\Cxbx-Reloaded\Cxbx-Reloaded\src\core\hle\D3D8\XbVertexShader.cpp line 356)

XBE Info: Xbe.txt Kernel Debug: KrnlDebug.txt

CloudyShane commented 3 years ago

Hello! I’m using emulator version 8087b15 (May 28 2021).

image

So, basically today I’ve got a Japanese import of PGR2, which I’ve made a dump of, and that’s what I was running today.

Here are my settings:

image

image

image

No LLE was used.

As you can see, I was using All-Japan settings (that enables Japanese text in the game).

Starting the game. Non-gameplay stuff.

So, to my surprise an unpatched bare xbe of NTSC-J PGR2 started very impressive!

First of all, all the cinematics run superb, no frame drops, no flicker. Stable 30fps playback, like on a real console:

image

image

image

image

image

But then comes the super-flickery main menu, which still manages to run at full speed… (Literally, that flicker gave me headaches and my eyes were feeling very bad…)

Normal frame:

image

Flicker frame:

image

It filckers like that every one or two frames all the time, so I'm not posting a gif not to disturb anyone who has seisures and signs of epilepsy.

Gameplay stuff

The only thing that works, sometimes shows non-garbage graphics and does not crash the emulator is the garage:

image

image

However, all cars are white (pressing X to change it does nothing).

It also glitches a lot when there is a car in viewpoint:

image

image

image

But when no cars are shown on the screen, the graphics are constantly healthy, yet I suppose there are no correct lighting effects:

image

image

Fun fact – Geometry Wars runs PERFECTLY!

To play Geometry Wars, approach this arcade cabinet and press A:

image

Gameplay screenshots:

image

image

image

When you try to actually race...

Starting a race shows the glitchy city preview:

image

As soon as the race starts, the emulator crashes without any errors.

If you try to play an instant race, the emulator will crash after the glitchy city preview like this:

image

Showroom

My favourite part, the showroom, works, but… Ehm…

image

It’s so glitchy that I can’t even find the exit of the staring room…

image

Funny enough, the tree sprites on the background are rendered in colour!

image

image

The XBOX Demos also works:

image

However, no videos are… Well, visual. You can only hear the sound of the videos played. Also, in this menu some text is not appearing.

Okay… That’s it for now! The game works, but is not finishable in this state as you can’t drive any cars yet. But you can play Geometry Wars, which is absolutely 100% playable! 😊

CloudyShane commented 3 years ago

Preview build CI-addf4b4

Menu still flickers (my eyes ahh), but the graphics are improved in garage mode! You can even change the colour of any car!

image

image

But, however, as you can see, the garage itself is still somewhat glitched.

OH MY GOSH OH MY GOSH OH MY GOSH!!!

The city is not glitched anymore!

image

You can even drive, but as soon as you see any car the graphics freak out...

image

For some very strange reason it seems like you drive backwards while pressing the right trigger to go forward...

image

Showroom crashes...

image

Nevermind, it only crashed after I've tried to go into garage and into race. If you start the game fresh, showroom is...

image

Glitched as hell, but better than before.

I managed to get out of the cars room and wow - everything renders amazingly well!

image

It's really hard to navigate in the showroom. Make a wrong step - boom! Glitches (and you can't see where you're going, like in races):

image

Gorgeous XJ-220 through the wall ^_^

image

You can only see where you're going if you look left or right while in first person view...

image

And also it's pretty easy to drive backwards - everything renders nicely (also only first person camera):

image

Yes, you can drive backwards... But it's stupid and pointless, yet you can!

image

CloudyShane commented 3 years ago

By the way, here is the dump of my Xbe:

PGR2_NTSC_J_XBE.txt

Some time later I will drop a kernel dump, maybe... (I don't yet understand how it works)

CloudyShane commented 3 years ago

I have a very important thing to say...

On my main PC (i5-10400F, RTX 2080, 16GB DDR4) this game boots fine, but on different hardware it might not work...

I wanted to test PGR2 (the same exact version) using my underpowered laptop (AMD A10-5757M, AMD HD8650G, 8GB DDR3) and it got the same error message as seen in the first comment on this issue:

image

I have the same version of Cxbx-R installed, the same EEPROM file, same settings, but it just doesn't want to boot.

Here is the kernel debug. It says something about vertex shaders, then crashes:

KrnlDebug.txt

CloudyShane commented 3 years ago

Verified. It still works on my Intel i5-10400F + Nvidia RTX2080 combo, even on the newest image release. No updates, still runs the same way as it was running on release addf4b4.

Here is kernel debug for it on version image ,if it helps:

KrnlDebug.txt

However, it is really important to investigate the issue of having different results of running this game on differents hardware configurations.

LeRutY commented 3 years ago

I can also get into races (GTX 1080 and i7 7700K) with the latest build. The glitched graphics make it look like you´re driving backwards but it´s not really the case

mnadareski commented 3 years ago

On build 23c1dcf:

Since this might be relevant, my test rig is Ryzen 5 3600 + GTX 960.

Notable messages:

[0x72C8] INFO : VTXSH   Please report that Project Gotham Racing 2 shows the following message:
LOG_TEST_CASE: FVF without position
In XboxVertexShaderFromFVF (D:\a\Cxbx-Reloaded\Cxbx-Reloaded\src\core\hle\D3D8\XbVertexShader.cpp line 131)
[0x72C8] INFO : VTXSH   Please report that Project Gotham Racing 2 shows the following message:
LOG_TEST_CASE: Unassigned Xbox vertex shader!
In GetXboxVertexShader (D:\a\Cxbx-Reloaded\Cxbx-Reloaded\src\core\hle\D3D8\XbVertexShader.cpp line 272)
[0x72C8] INFO : VTXSH   Please report that Project Gotham Racing 2 shows the following message:
LOG_TEST_CASE: Xbox should always have a VertexShader set (even for FVF's)
In GetXboxVertexAttributeFormat (D:\a\Cxbx-Reloaded\Cxbx-Reloaded\src\core\hle\D3D8\XbVertexShader.cpp line 360)

Kernel Debug: KrnlDebug.txt

CloudyShane commented 3 years ago

It seems like PGR2 only launches on Intel CPU's on the newest Cxbx-R build...