Project

General

Profile

Actions

Emulator Issues #2822

closed

Metroid Prime, bugs with X-ray vision

Added by vgerardini almost 15 years ago.

Status:
Invalid
Priority:
Normal
Assignee:
-
Category:
GFX
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

What steps will reproduce the problem?
When I use the X-ray vision on Metroid Prime, everything is white

What is the expected output? What do you see instead?
I don't know what is the expected output but i can't see anything

Dolphin version with the problem? Other Dolphin version without the
problem?
All of then

32-bit or 64-bit and any other build parameters?
rev: 5684 32-bit

OS version and versions of tools/libraries used?
OS: XP SP3
CPU: Intel Core 2 Duo E4500 2200 MHz
Board: Asus P5K SE
GPU: nVIDIA GeForce 8600 GT (512 MB)
Directx 9

Actions #1

Updated by PianoGamer almost 15 years ago

Try different copy EFB options, like "EFB to RAM"

Actions #2

Updated by skidau over 14 years ago

  • Category set to gfx
Actions #3

Updated by Autoran1 about 13 years ago

It works, with EFB to RAM and broken with Virtual Copies, i think i know why, just need a time to find it out

Actions #4

Updated by Autoran1 about 13 years ago

This quite an interesting issue, i think a lot of thigs were broken the same way as X-Ray visor on Virtual EFB copies
If someone interested try to switch during gameplay to RAM and than back to Virtual, you'll see that screen doesn't clearing on current Texture Cache Model texcache-rewrite works fine and issue are presented in many games

Actions #5

Updated by Autoran1 about 13 years ago

It's a SafeTextureCache clearing screen issue, which is still presented since 1xxx revisions of emu

Actions #6

Updated by Autoran1 about 13 years ago

Here's the big report about the issue
it affects a lot of games, but it was unable to test because disabling Safe Texture Cache became unavailable after NeoBrain removed it, issue started since r1871 was fixed in 1872, and became broken again in 1873. To reproduce the isuue, you have to switch during gameplay to EFB to Ram and than swith back to Texture again and the surfaces which requires value from ram take this last value, and since it's not updated under Virtual copies picture becames partialy broken/frozen with Virtual copies was fixed under texture-cache rewrite mostly, but project look's abandoned now anther way to reproduce it it's to disable Safe Texture Cache, than all the corruption will be removed from the screen, but some games as we know really need safe texture cache*
i've made patch, which seem's to fixes or disables the broken part of Virtual Copies for Safe Texture Cache, while other features like fixing letters for Metroids remains untouched and functional.
Here's some screens for the difference

Metroid Prime 1
Normal Build git-543 EFB to Ram
http://i.imgur.com/LbpQc.jpg
http://i.imgur.com/NT9Rc.jpg
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/WmSXJ.jpg
http://i.imgur.com/X6HKi.jpg
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/a8EW1.png
http://i.imgur.com/in3yT.jpg
Patched build git-543 EFB to Texture
http://i.imgur.com/yDXj4.jpg
http://i.imgur.com/CASEh.jpg

Metroid Prime 2
Normal Build git-543 EFB to Ram
http://i.imgur.com/6iZvW.jpg
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/5OuZ4.jpg
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/y4YBa.jpg
Patched build git-543 EFB to Texture
http://i.imgur.com/7Jbqh.jpg

Metroid Prime 3
Normal Build git-543 EFB to Ram
http://i.imgur.com/Is6EJ.jpg
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/FjbuS.jpg
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/MBWNU.jpg
Patched build git-543 EFB to Texture
http://i.imgur.com/NtBdN.jpg

Okami Issue 2236
Normal Build git-543 EFB to Ram
http://i.imgur.com/u84kk.jpg
http://i.imgur.com/Os2xO.jpg
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/4kYTd.jpg
http://i.imgur.com/UExZs.jpg
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/4r1km.jpg
Patched build git-543 EFB to Texture
http://i.imgur.com/uPG1M.jpg
http://i.imgur.com/gDEfx.jpg

Dead Space Issue 3981
Normal Build git-543 EFB to Ram
http://i.imgur.com/2En2X.jpg
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/7ix3y.png
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/N7smp.jpg
Patched build git-543 EFB to Texture
http://i.imgur.com/1TJdF.png

Zelda Twiligth Princess map
Normal Build git-543 EFB to Ram
http://i.imgur.com/XApb2.jpg
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/RVptV.jpg
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/AgQPz.jpg
Patched build git-543 EFB to Texture
http://i.imgur.com/MersP.jpg

MGS Twin Snakes
Normal Build git-543 EFB to Ram
http://i.imgur.com/BUdS4.png
TexCache-Rewrite r7694 virtual EFB Copies
http://i.imgur.com/3iDP1.png
Normal build git-543 EFB to Texture swithed after EFB to RAM
http://i.imgur.com/GlxRz.png
Patched build git-543 EFB to Texture
http://i.imgur.com/UmFVp.png

And here's the patch

Actions #7

Updated by NeoBrainX almost 13 years ago

Uhm, so everything works fine if you use EFB copies to RAM?

Actions #8

Updated by pauldacheez almost 13 years ago

Everything works fine on EFB to RAM; the point here is that Autoran thinks he found a slight improvement to EFB to Texture.

I tested this code change under the Hashless branch, and it only breaks things in Metroid Prime 2: it causes text corruption and makes the green/blue/red overlays over scannable objects disappear on both EFB to RAM and Texture (objects are still scannable on EFB to RAM, but not on Texture).

Testing the change on master produces similar results, but doesn't screw up EFB to RAM and doesn't cause any text corruption on either EFB setting.

But, yeah, I don't recommend it, unless you want to bring back the rest of texcache-rewrite.

Speaking of which, I've never actually heard the whole story about texcache-rewrite. Why it was reverted? What'd it break?

Actions #9

Updated by Autoran1 almost 13 years ago

I don't think i've found an improvement, it's more like patch that's disables corrupted functions under EFB to Texture, more like CRC Hacks in GSdx, you don't like it you don't use it)

Actions #10

Updated by NeoBrainX over 12 years ago

Yeah, the EFB to texture hack could be improved to support TLUT changes (that's what breaks X-ray vision here, and it's why your patch works), and in fact it's what texcache-rewrite did. Unfortunately, I don't see it happening in master anytime soon.

Actions #11

Updated by NeoBrainX over 12 years ago

  • Status changed from New to Invalid

Invalid, because EFB copies to RAM works perfectly fine here.

Actions

Also available in: Atom PDF