summaryrefslogtreecommitdiff
path: root/src/citra_qt/debugger/graphics_tracing.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/citra_qt/debugger/graphics_tracing.cpp')
-rw-r--r--src/citra_qt/debugger/graphics_tracing.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/citra_qt/debugger/graphics_tracing.cpp b/src/citra_qt/debugger/graphics_tracing.cpp
index eac405820..3e88346c0 100644
--- a/src/citra_qt/debugger/graphics_tracing.cpp
+++ b/src/citra_qt/debugger/graphics_tracing.cpp
@@ -62,12 +62,20 @@ void GraphicsTracingWidget::StartRecording() {
62 62
63 // Encode floating point numbers to 24-bit values 63 // Encode floating point numbers to 24-bit values
64 // TODO: Drop this explicit conversion once we store float24 values bit-correctly internally. 64 // TODO: Drop this explicit conversion once we store float24 values bit-correctly internally.
65 std::array<Math::Vec4<uint32_t>, 16> default_attributes;
66 for (unsigned i = 0; i < 16; ++i) {
67 for (unsigned comp = 0; comp < 3; ++comp) {
68 default_attributes[i][comp] = nihstro::to_float24(Pica::g_state.vs.default_attributes[i][comp].ToFloat32());
69 }
70 }
71
65 std::array<Math::Vec4<uint32_t>, 96> vs_float_uniforms; 72 std::array<Math::Vec4<uint32_t>, 96> vs_float_uniforms;
66 for (unsigned i = 0; i < 96; ++i) 73 for (unsigned i = 0; i < 96; ++i)
67 for (unsigned comp = 0; comp < 3; ++comp) 74 for (unsigned comp = 0; comp < 3; ++comp)
68 vs_float_uniforms[i][comp] = nihstro::to_float24(Pica::g_state.vs.uniforms.f[i][comp].ToFloat32()); 75 vs_float_uniforms[i][comp] = nihstro::to_float24(Pica::g_state.vs.uniforms.f[i][comp].ToFloat32());
69 76
70 auto recorder = new CiTrace::Recorder((u32*)&GPU::g_regs, 0x700, nullptr, 0, (u32*)&Pica::g_state.regs, 0x300, 77 auto recorder = new CiTrace::Recorder((u32*)&GPU::g_regs, 0x700, nullptr, 0, (u32*)&Pica::g_state.regs, 0x300,
78 (u32*)default_attributes.data(), default_attributes.size() * 4,
71 shader_binary.data(), shader_binary.size(), 79 shader_binary.data(), shader_binary.size(),
72 swizzle_data.data(), swizzle_data.size(), 80 swizzle_data.data(), swizzle_data.size(),
73 (u32*)vs_float_uniforms.data(), vs_float_uniforms.size() * 4, 81 (u32*)vs_float_uniforms.data(), vs_float_uniforms.size() * 4,