Closed magiruuvelvet closed 8 years ago
@GhettoGirl SPU emulation isn't slow (with asmjit and with at least with this game), OGL renderer itself is what slow. (and openal can't make sound run at 100% speed while ingame fps isn't 100%) Source: I can run the game fullspeed (30fps) in windows with DX12 and Vulkan, OGL can't reach full speed. (but with xaudio2 sound works fine.)
Also those graphics regressions are from the new ogl renderer with cache.
Fun fact: in windows on my GTX970, 3D models in menus (for example Miku on your screenshot) is invisible. (in OGL and DX12)
You should try using an older rpcs3 build that doesn't have the new OGL renderer merged, since the current OGL renderer is WIP, has missing features, bugs, etc. (i think this is the last before the new ogl renderer: https://github.com/RPCS3/rpcs3/commit/251fb86ab0f16633a021479085c41719ea5d041b (and that only fixes graphical issues, you won't be able to reach fullspeed))
Video about the sound difference (please ignore windows sounds, win10 started derping that my AV is turned off when its not -.-)
SPU emulation isn't slow (with asmjit and with at least with this game), OGL renderer itself is what slow. (and openal can't make sound run at 100% speed while ingame fps isn't 100%) Source: I can run the game fullspeed (30fps) in windows with DX12 and Vulkan, OGL can't reach full speed. (but with xaudio2 sound works fine.)
Ok thanks for the info, didn't know about that one :P I know in older build this game works better. I still hope the logs are of any use.
Btw, I'm not interested in playing games in this emulator at this stage. I'm just playing around with it and see what works and what doesn't. :grin:
At least the game enters main menu again after the latest commit.
Regards
251fb86
At least on Linux I guess, this commit is unable to boot in game and freezes with a fs::null
message.
fs::null error is likely caused by lacking of shader cache directory in config directory. Regarding OpenAL, it's dead parrot and I'm not sure what to do with it.
IDK if this error is because i use my iGPU (HD4600), but i get this now with OGL (DX12 works fine aside from graphical bugs)
·F {rsx::thread} class gl::glsl::link_exception thrown: linkage failed: 'The fragment shader uses varying tex9, but previous shader does not write to it. Out of resource error.
@Nezarn Could you upload the shaderlogs? Remember to delete previous contents of the folder before running to reduce clutter.
@kd-11 yeah sure https://www.dropbox.com/s/z1t3unewkzaq0qy/OGL_HMPDF.zip?dl=0
i think should be fixed . Closed
the new builds all die with F {rsx::thread} St11logic_error thrown: fs::file is null
for this game :confused:
rsx_decompiler needs to be updated. It plays fine with current head.
i tested the latest master branch of rsx_program_decompiler and RPCS3/rsx_program_decompiler@05d1fc4 (this is what git submodule update
gave me)
both failed with this error message
@GhettoGirl Linux?
If it's a gl error, then first disable __glcheck in gl_helpers.h by setting the macro to ifdef _DEBUG. Then run the game with debug reporting enabled and the game should write opengl errors to log instead of throwing an exception
Still not working. Also I didn't noticed an OpenGL error
Logs: https://mega.nz/#F!XkBnkQTY!6_rnNA15eRqdl5cn6sKaIw
There are also only 2 shaders in the cache.
RPCS3 v0.0.1-4606-09ae45c Pre-Alpha
U {PPU[0x1] Thread (main_thread) [0x009c80f0]} sysPrxForUser TODO: _sys_process_atexitspawn()
U {PPU[0x1] Thread (main_thread) [0x009c8210]} sysPrxForUser TODO: _sys_process_at_Exitspawn
U {PPU[0x1] Thread (main_thread) [0x005728b4]} HLE TODO: Unimplemented syscall sys_ss_get_open_psid -> CELL_OK
E {PPU[0x1] Thread (main_thread) [0x009c7510]} PPU: 'cellGameContentPermit' failed with 0x8002cb22 : CELL_GAME_ERROR_FAILURE
U {PPU[0x1] Thread (main_thread) [0x009c7fb0]} cellScreenshot TODO: cellScreenShotSetParameter
U {PPU[0x1] Thread (main_thread) [0x009c7f70]} cellScreenshot TODO: cellScreenShotSetOverlayImage
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (10)
U {PPU[0x1] Thread (main_thread) [0x009c6cf0]} cellGcmSys TODO: cellGcmSetQueueHandler
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
E {PPU[0x1] Thread (main_thread) [0x009c6e70]} cellGcmSys: cellGcmSetTileInfo: bad compression mode! (7)
U {PPU[0x1] Thread (main_thread) [0x009c6610]} cellUsbd TODO: cellUsbdRegisterExtraLdd
E {PPU[0x1] Thread (main_thread) [0x006c736c]} sys_fs: sys_fs_open('./dev_ram/user.properties') failed: device not mounted
E {PPU[0x1] Thread (main_thread) [0x006c736c]} PPU: 'sys_fs_open' failed with 0x8001003a : CELL_ENOTMOUNTED
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: SPU Database initialized...
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x000f0-0x00178] (size=0x88)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: SPU Recompiler (ASMJIT) created...
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x00090-0x000e0] (size=0x50)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06e20-0x06e30] (size=0x10)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06d28-0x06e10] (size=0xe8)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06580-0x06644] (size=0xc4)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x05e68-0x05fa8] (size=0x140)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x00ab0-0x00b5c] (size=0xac)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x017b8-0x017ec] (size=0x34)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x015f0-0x0164c] (size=0x5c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x01660-0x01704] (size=0xa4)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x04c70-0x04e90] (size=0x220)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x02e78-0x02eb0] (size=0x38)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06988-0x069c4] (size=0x3c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06a18-0x06a30] (size=0x18)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x089e0-0x08c20] (size=0x240)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x069e8-0x069fc] (size=0x14)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06a78-0x06ab4] (size=0x3c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x092f0-0x09368] (size=0x78)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06b20-0x06ba0] (size=0x80)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06a38-0x06a78] (size=0x40)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x09298-0x092f0] (size=0x58)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x072c8-0x089e0] (size=0x1718)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06e30-0x07038] (size=0x208)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x05b98-0x05c3c] (size=0xa4)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x022b0-0x023fc] (size=0x14c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x002e8-0x00318] (size=0x30)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x05788-0x058cc] (size=0x144)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x07038-0x072c4] (size=0x28c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06710-0x06944] (size=0x234)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x060e8-0x0633c] (size=0x254)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x01d28-0x022b0] (size=0x588)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x00d00-0x0158c] (size=0x88c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x024b8-0x02e78] (size=0x9c0)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x05958-0x05988] (size=0x30)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x00348-0x00380] (size=0x38)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x01720-0x01768] (size=0x48)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06ce8-0x06d24] (size=0x3c)
S {SPU[0x11d] Thread (_synth2 Thread)} SPU: Function detected [0x06c78-0x06ce4] (size=0x6c)
U {PPU[0x1] Thread (main_thread) [0x009c6e90]} cellGcmSys TODO: cellGcmSetZcull(index=0, offset=0x4480000, width=2048, height=1152, cullStart=0x0, zFormat=0x2, aaFormat=0x0, zCullDir=0x0, zCullFormat=0x1, sFunc=0x207, sRef=0x0, sMask=0xff)
U {PPU[0x1] Thread (main_thread) [0x009c8050]} cellRtc TODO: cellRtcGetCurrentTick(pTick=*0xd0057a80)
U {PPU[0x1] Thread (main_thread) [0x009c8050]} cellRtc TODO: cellRtcGetCurrentTick(pTick=*0xd0057a80)
U {PPU[0x1] Thread (main_thread) [0x009c8050]} cellRtc TODO: cellRtcGetCurrentTick(pTick=*0xd0057a80)
F {rsx::thread} St11logic_error thrown: fs::file is null
Well, if __glcheck is disabled, then it is likely not a GL error. Does this happen with any other game?
I tested 5 other games, same error.
Project Diva F 2nd (JP) just freezes and never boots up without the fs:file error.
Sounds like a regression somewhere which only seems to affect Linux and probably Mac too.
Well, from the description it sounds like a HLE bug on linux. You should open an issue for it. If it happens during the loading screen, it may be related to loading save data. Maybe try using rpcs3 from a partition with case insensitive filenames to see if it is affected.
I created a FAT32 disk image using dd
and started RPCS3 from there. I can confirm somehow that this may be case-sensitivity related. Now I get an OpenGL error
F {rsx::thread} St13runtime_error thrown: OpenGL error: invalid enum. file '/build/emulators/rpcs3/rpcs3/Emu/RSX/GL/GLGSRender.cpp' function 'set_viewport' line 550
I will open new issue for that.
@kd-11 Can you please take a look at #1985 and #1986. I just found out whats wrong using strace
and the help of @Nezarn :smile:
btw, graphic is still broken in OpenGL
RPCS3 Version: v0.0.1-4510- 028277b Game: Hatsune Miku: Project Diva F [BLJM-60527] PPU: Interpreter (precise) SPU: ASMJIT; Interpreter is even slower and crashes Logs, Screenshots and Audio Capture: https://mega.nz/#F!3xBmVKrA!ImAhWLgApLnUCE-oQoodqQ
The latest commit fixed the freeze in the loading screen, but there are a lot of other problems now:
slow SPU emulation (stuttering sound) with ASMJITeven slower with Interpreter and emulator crashesAn audio capture file in WAV format can be found in the MEGA folder.
Here one screenshot of the main menu, more screenshots in the MEGA folder