RPCS3 / rpcs3

PS3 emulator/debugger
https://rpcs3.net/
GNU General Public License v2.0
14.55k stars 1.85k forks source link

rsx: Major Fixes #4469

Closed kd-11 closed 6 years ago

kd-11 commented 6 years ago

Contains several major improvements

Other

MarioSonic2987 commented 6 years ago

image Shadow in R&C 3 is a bit broken.

Edit: In OpenGL, shadow is fine. image

Xcedf commented 6 years ago

fixes the remaining part of #3031 UFC 2009 OGL had Yellow filter and Vulkan had blackscreen now both renders are fixed 1 same for Simpsons The game 2 Haze 3 Perhaps Others too Great Job as usual

MarioSonic2987 commented 6 years ago

Fixes yellow filter with OpenGL and blackscreen with Vulkan in Grid:

OpenGL: image image

Vulkan: image image

MarioSonic2987 commented 6 years ago

Also affects Tekken Tag Tournament 2:

image image

JusicP commented 6 years ago

Fixes #4189

MarioSonic2987 commented 6 years ago

There's a dark shadow around the character's one in Vulkan: image

But with OpenGL, crashes before going to main menu (after creating your profile): Log OpenGL

stride21 commented 6 years ago

ico 1 ico 2 ICO no longer has an issue with yellow filter in OpenGL and black screen in Vulkan.

JMC47 commented 6 years ago

I can confirm an issue with shadows in Vulkan with NHL09, much akin to the grid demo shown above.

image

The issue is not present in OpenGL

kd-11 commented 6 years ago

Issue is because vulkan does not support custom border color like opengl. You have to pick from 3 presets. Dont worry too much about it, we'll improve the preset selection code.

stride21 commented 6 years ago

capture inFamous 2 no longer has a white screen while using Vulkan, it now looks just like OpenGL.

isshininu commented 6 years ago

Blocky lighting in Silent Hill 2 (from Silent Hill: HD Collection) on Vulkan. 542 RPCS3.log.gz

kd-11 commented 6 years ago

I already said not to post more border color issues. You can clearly see the shadow border breaks at the character's feet.

isshininu commented 6 years ago

oops, didn't see that

Illynir commented 6 years ago

Nier is too white now:

sans titre

kd-11 commented 6 years ago

Potential fix for the shadow borders has been added. Check if shadow regressions have been fixed.

hbzlmx commented 6 years ago

Where to download rpcs3 rsx_wip?

MarioSonic2987 commented 6 years ago

image Still the same.

Illynir commented 6 years ago

Or too black also:

sans titre

isshininu commented 6 years ago

Aww, is shadow border fix for my issue? RPCS3.log.gz 543

kd-11 commented 6 years ago

Need opengl RDC (I know it works fine with OGL but vulkan has no notion of a border color)

jon-reid commented 6 years ago

RDR - Gets much further into the game now, very impressive Crashed at this point https://prnt.sc/j89lty Crashed after i made Chrome the active window, perhaps that caused it/coincidence

RPCS3.log.gz

MarioSonic2987 commented 6 years ago

RenderDoc OpenGL (R&C3)

kd-11 commented 6 years ago

I think grid would have been better or at least something where the shadow clearly occupied space it shouldn't be. Not sure whats up with R&C3 but there doesnt seem to be any problem with the border (its <1,1,1,1> which will resolve correctly). Probably unrelated to the others but I'm not sure yet.

toccata10 commented 6 years ago

Can't compile on ArchLinux:

[ 59%] Building CXX object rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/GL/GLRenderTargets.cpp.o
cc1plus: warning: /home/jo/tmp/rpcs3/kd11/rpcs3_build/rpcs3/cotire/rpcs3_CXX_prefix.hxx.gch : non utilisé parce que « __STDC_CONSTANT_MACROS » est défini [-Winvalid-pch]
In file included from /home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/GLTextureCache.h:19:0,
                 from /home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/GLGSRender.h:5,
                 from /home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/GLRenderTargets.cpp:3:
/home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/../Common/texture_cache.h: Dans l'instanciation de « void rsx::texture_cache<commandbuffer_type, section_storage_type, image_resource_type, image_view_type, image_storage_type, texture_format>::lock_memory_region(image_storage_type*, u32, u32, u32, u32, u32, Args&& ...) [avec Args = {gl::texture::format&, gl::texture::type&, bool&}; commandbuffer_type = void*; section_storage_type = gl::cached_texture_section; image_resource_type = gl::texture*; image_view_type = gl::texture_view*; image_storage_type = gl::texture; texture_format = gl::texture::format; u32 = unsigned int] » :
/home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/GLRenderTargets.cpp:498:67:   requis depuis ici
/home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/../Common/texture_cache.h:970:10: error: impossible de lier la référence d'une l-valeur non constante de type « std::vector<gl::cached_texture_section*, std::allocator<gl::cached_texture_section*> >& » à une r-valeur de type « std::vector<gl::cached_texture_section*, std::allocator<gl::cached_texture_section*> > »
    auto &overlapped = find_texture_from_range(memory_address, memory_size);
          ^~~~~~~~~~
/home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/../Common/texture_cache.h: Dans l'instanciation de « void rsx::texture_cache<commandbuffer_type, section_storage_type, image_resource_type, image_view_type, image_storage_type, texture_format>::lock_memory_region(image_storage_type*, u32, u32, u32, u32, u32, Args&& ...) [avec Args = {gl::texture::format&, gl::texture::type&, bool}; commandbuffer_type = void*; section_storage_type = gl::cached_texture_section; image_resource_type = gl::texture*; image_view_type = gl::texture_view*; image_storage_type = gl::texture; texture_format = gl::texture::format; u32 = unsigned int] » :
/home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/GLRenderTargets.cpp:513:55:   requis depuis ici
/home/jo/tmp/rpcs3/kd11/rpcs3/rpcs3/Emu/RSX/GL/../Common/texture_cache.h:970:10: error: impossible de lier la référence d'une l-valeur non constante de type « std::vector<gl::cached_texture_section*, std::allocator<gl::cached_texture_section*> >& » à une r-valeur de type « std::vector<gl::cached_texture_section*, std::allocator<gl::cached_texture_section*> > »
cc1plus: warning: option « -Wno-unused-command-line-argument » non reconnue sur la ligne de commande
make[2]: *** [rpcs3/CMakeFiles/rpcs3.dir/build.make:5327: rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/GL/GLRenderTargets.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:240: rpcs3/CMakeFiles/rpcs3.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
makotech222 commented 6 years ago

Getting about a 10 fps increase in Unnamed game 5. This is with latest artifact build. Nice job!

MSuih commented 6 years ago

I guess this is better for you kd? Yakuza 4 OGL renderdoc

Looks like this on Vulkan

kd-11 commented 6 years ago

Good capture but unfortunately renderdoc wont open it on my system (consumes all available system memory and kills windows). Maybe you can try a simpler scene? As long as memory consumption when loading does not eat more than ~7GB will be fine.

MSuih commented 6 years ago

Alright, another attempt. If this one doesn't work either then someone else has to provide a capture, I tried everything I could to keep the memory usage below 8gb.

Kravickas commented 6 years ago

Dirt 2 Vulkan show render and no piss filter obrazek

legend800 commented 6 years ago

Ran a full pass on my (non-playable) games, in Vulcan and OpenGL, testing performance, stability and gfx improvements with the appropriate settings config.

Noticeable changes only observed in 3 games: • Captain America: Stability issues fixed seemingly. But speed is still only ~70% (no change) • GTI Club: Much more stable - used to take ~5 attempts to get in-game. Also required WCB before to get in-game. No longer. Unfortunately, the road textures are now broken – just black mostly. No settings affected the new defect. Log below.

2

RPCS3.log.gz

• Backbreaker/Backbreaker Vengeance: Still has the half screen issue, but right screen is no longer black (slight improvement)

untitled

No changes to other games tested: • Rayman Legends: Still flickers • Conan – Still major texture issues • MotorStorm, M. Apocalypse, M. Pacific Rift – Crash in menus (PPU issue probably) • NFL Blitz – Still doesn’t boot since 12/1/17 (SPU issue probably) • Peggle – No boot with full version (PPU issue probably) • Ridge Racer 7 - tree flickering still (GPU), staticy audio with full FPS (SPU issue probably) • Splatterhouse – Still unstable • TMNT: Reshelled – Still broken textures • Wipeout HD - Unstable, speed is still only ~50% on avg (no change) • Force Unleashed 2 – crashes on menus (PPU issue probably) • Double Dragon Neon – Background still broken • Pac man Museum – various gfx issues remain

[Update] GTI issue either fixed by last commit or wiping all the cache.

theoldsport commented 6 years ago

RPCS3.log.gz

Those arms though edit- fixed with latest fixups base profile screenshot 2018 04 21 - 11 36 53 89

WilianZilv commented 6 years ago

•Amplitude: Blackscreen even tho it is possible to go throught menus and even ingame

image

kd-11 commented 6 years ago

Border color bug should be fixed now.

kd-11 commented 6 years ago

@Illynir Is wcb enabled? I know it sounds silly to ask but with the current compiling code (with https://github.com/RPCS3/rpcs3/pull/4469/commits/1eb163addb2cc9c3011d36983580068f5f62f047) it works just like usual for me. Maybe it was also affected by border samples or something.

MarioSonic2987 commented 6 years ago

Shadows are fixed in Grid and R&C3 with Vulkan: image image

But in Grid, it still crashes with OpenGL.

Log Grid Master OpenGL

Log Grid PR OpenGL

Asinin3 commented 6 years ago

@MarioSonic2987 Grid issue (crash when launching) exists on master as well, you need to clean shader cache before each boot. Not a regression from these changes I just tested it.

psennermann commented 6 years ago

I need a bit more time to test, but this PR seems to finally fix issue #4334 (and maybe #2359 as well?) , but I also encountered some crashes due to "unhandled exceptions" that I've never had before when testing other revisions...

MSuih commented 6 years ago

Ratchet & Clank Triology: The third game now has flickering models if there is too much stuff to render at once. Doesn't seem to affect the other two games as much.

Red Dead Redemption: Still crashes with VK_ERROR_INITIALIZATION_FAILED. Log with debug output.

kd-11 commented 6 years ago

RDR issue should be fixed. R&C flickering is a driver "bug" and only happens on AMD. While there are possible ways of working around it introduces either a great performance hit or excessive VRAM usage (basically either increase VRAM heap or add small wait after waiting for a fence to complete). Games should not be drawing 10k+ individual triangles which is something that will get fixed later on. Note that it also happens on master for me (GCN1)

MSuih commented 6 years ago

I got eight gigs of VRAM, I'd be glad to use some of it to fix issues like that :P But thanks for answering that. RDR and Yakuza issues are both fixed in latest commit.

jon-reid commented 6 years ago

628d9c4

RDR: getting strange circles around the character when looking down Occurs for OGL and Vulkan https://prnt.sc/j8lhl2

twdarkeh commented 6 years ago

The fog is back.

Xcedf commented 6 years ago

Fixed black overlay in absolving minigame of Dante's Inferno 22

kd-11 commented 6 years ago

@twdarkeh Fog is gone

NeoSlyde commented 6 years ago

Improve Sonic Unleashed a lot: https://youtu.be/JrNbPZxEiqg https://youtu.be/soTZWTObtRY https://youtu.be/2ay19O4nEd4

Before it wasn’t even reaching the menu

NeoSlyde commented 6 years ago

@slashiee is stupid don’t mind him

Rpcs3tester commented 6 years ago

@kd-11 thanks it's great but i did test RE:code veronica .. it's still have shadow and claire's front hair orange

AniLeo commented 6 years ago

If it's not a regression then it doesn't matter

Rpcs3tester commented 6 years ago

TTT2 (NPEB01140) it was more than one stage got shadow or blur .. now it's fixed except one stage

2018-04-23_14-06-34

and if i press start button

2018-04-23_14-07-11

bigol83 commented 6 years ago

Red Dead Redemption GOTY missing water and black faces

rdr rdr2