summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiziano Bacocco <tizbac2@gmail.com>2015-02-02 17:40:28 +0100
committerJose Fonseca <jfonseca@vmware.com>2016-09-21 11:48:49 +0100
commit45ec91c39a85aaf3af5a324e7c03e6e05efcd679 (patch)
treea5749d448921abf1bf290a1b74604efbe1ff630f
parentdc940a3610ebbf54099c709416ba50364d6a8233 (diff)
d3dretrace: Dump viewport state for d3d9
Dump D3D9 viewport state. Rebased against current HEAD. Signed-off-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Patrick Rudolph <siro@das-labor.org>
-rw-r--r--retrace/d3d9state.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/retrace/d3d9state.cpp b/retrace/d3d9state.cpp
index a3aed468..05f85afa 100644
--- a/retrace/d3d9state.cpp
+++ b/retrace/d3d9state.cpp
@@ -95,6 +95,25 @@ dumpShaders(StateWriter &writer, IDirect3DDevice9 *pDevice)
}
static void
+dumpViewport(StateWriter &writer, IDirect3DDevice9 *pDevice)
+{
+ writer.beginMember("Viewport");
+ writer.beginObject();
+
+ D3DVIEWPORT9 vp;
+ pDevice->GetViewport(&vp);
+ writer.writeIntMember("X", vp.X);
+ writer.writeIntMember("Y", vp.Y);
+ writer.writeIntMember("Width", vp.Width);
+ writer.writeIntMember("Height", vp.Height);
+ writer.writeIntMember("MinZ", vp.MinZ);
+ writer.writeIntMember("MaxZ", vp.MaxZ);
+
+ writer.endObject();
+ writer.endMember();
+}
+
+static void
dumpRenderstate(StateWriter &writer, IDirect3DDevice9 *pDevice)
{
#define _DUMP_RS_INT(x) { \
@@ -219,6 +238,8 @@ dumpRenderstate(StateWriter &writer, IDirect3DDevice9 *pDevice)
#undef _DUMP_RS_INT
#undef _DUMP_RS_FLOAT
+ dumpViewport(writer, pDevice);
+
writer.endObject();
writer.endMember();
}