Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Texture Dumper + RSX Draw Call Stepping #13042

Merged
merged 2 commits into from
Dec 10, 2022
Merged

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented Dec 10, 2022

  • Fixed textures display of RSX debugger, it ended up not really showing textures before due to many bugs.
  • Add new compressed texture formats support to it.
  • Allow dumping images from it by right-clicking on them.
  • Step RSX draw calls using the "step over" button in the RSX instructions debugger (the one with PPU/SPU threads).

Keep in mind that in order to view them correctly you need to step RSX into a draw call and may use Write Color Buffers in order to dump rendered images. (source textures can mostly be viewed fine without it though)
Also, RSX needs to be paused. (due to performance issues I disabled view when it's running)
If you want to dump rendered depth buffer "images" you need Write Depth Buffer enabled.

image

https://cdn.discordapp.com/attachments/272875751773306881/1051084619933552670/image.png

Fixes #1659

@@ -657,6 +657,13 @@ namespace rsx
{
rsxthr->in_begin_end = false;
}

if (rsxthr->pause_on_draw.exchange(false))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe test pause_on_draw before exchange()?

rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
@elad335
Copy link
Contributor Author

elad335 commented Dec 10, 2022

Reviews fixed.

@Megamouse
Copy link
Contributor

No merge

@elad335
Copy link
Contributor Author

elad335 commented Dec 10, 2022

Resolved in pm.

rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/debugger_frame.cpp Outdated Show resolved Hide resolved
rpcs3/rpcs3qt/rsx_debugger.cpp Show resolved Hide resolved
@elad335 elad335 force-pushed the rsx-dumper branch 2 times, most recently from a87e718 to bf0df42 Compare December 10, 2022 13:33
@Megamouse Megamouse merged commit 151a095 into RPCS3:master Dec 10, 2022
@elad335 elad335 deleted the rsx-dumper branch December 10, 2022 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Dumping Textures from RSX Debugger
3 participants