Add 'show all instances' mode, and make colours consistent. Closes #248

This commit is contained in:
baldurk
2016-06-03 17:34:26 +02:00
parent e0d664f1b3
commit 947f7decb2
12 changed files with 144 additions and 61 deletions
+5 -4
View File
@@ -601,6 +601,8 @@ namespace renderdoc
public bool bgraOrder;
public SpecialFormat specialFormat;
public FloatVector meshColour;
public bool showAlpha;
public PrimitiveTopology topo;
@@ -622,16 +624,15 @@ namespace renderdoc
public float fov = 90.0f;
public float aspect = 0.0f;
public bool thisDrawOnly = true;
public bool showPrevInstances = false;
public bool showAllInstances = false;
public bool showWholePass = false;
public UInt32 curInstance = 0;
public UInt32 highlightVert;
public MeshFormat position;
public MeshFormat secondary;
public FloatVector prevMeshColour = new FloatVector();
public FloatVector currentMeshColour = new FloatVector();
public FloatVector minBounds = new FloatVector();
public FloatVector maxBounds = new FloatVector();
public bool showBBox = false;
+3 -1
View File
@@ -463,9 +463,11 @@
this.drawRange.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.drawRange.Items.AddRange(new object[] {
"Only this draw",
"Show previous instances",
"Show all instances",
"Show whole pass"});
this.drawRange.Name = "drawRange";
this.drawRange.Size = new System.Drawing.Size(121, 25);
this.drawRange.Size = new System.Drawing.Size(140, 25);
this.drawRange.SelectedIndexChanged += new System.EventHandler(this.drawRange_SelectedIndexChanged);
//
// toolStripSeparator4
+13 -5
View File
@@ -303,12 +303,11 @@ namespace renderdocui.Windows
m_MeshDisplay.solidShadeMode = SolidShadeMode.None;
solidShading.SelectedIndex = 0;
m_MeshDisplay.thisDrawOnly = true;
m_MeshDisplay.showPrevInstances = false;
m_MeshDisplay.showAllInstances = false;
m_MeshDisplay.showWholePass = false;
drawRange.SelectedIndex = 0;
m_MeshDisplay.currentMeshColour = new FloatVector(1, 0, 0, 1);
m_MeshDisplay.prevMeshColour = new FloatVector(0, 0, 0, 1);
if (m_Arcball != null)
m_Arcball.Camera.Shutdown();
if (m_Flycam != null)
@@ -2990,7 +2989,16 @@ namespace renderdocui.Windows
private void drawRange_SelectedIndexChanged(object sender, EventArgs e)
{
m_MeshDisplay.thisDrawOnly = (drawRange.SelectedIndex == 0);
/*
"Only this draw",
"Show previous instances",
"Show all instances",
"Show whole pass"
*/
m_MeshDisplay.showPrevInstances = (drawRange.SelectedIndex >= 1);
m_MeshDisplay.showAllInstances = (drawRange.SelectedIndex >= 2);
m_MeshDisplay.showWholePass = (drawRange.SelectedIndex >= 3);
render.Invalidate();
}