public ConstantBufferPreviewer(Core c, ShaderStageType stage, UInt32 slot) { InitializeComponent(); m_Core = c; Stage = stage; Slot = slot; shader = m_Core.CurPipelineState.GetShader(stage); UpdateLabels(); uint offs = 0; m_Core.CurPipelineState.GetConstantBuffer(Stage, Slot, out cbuffer, out offs); m_Core.Renderer.BeginInvoke((ReplayRenderer r) => { SetVariables(r.GetCBufferVariableContents(shader, Slot, cbuffer, offs)); }); m_Core.AddLogViewer(this); }
public MainWindow(Core core, string initFilename, bool temp) { InitializeComponent(); Icon = global::renderdocui.Properties.Resources.icon; renderdocplugin.PluginHelpers.GetPlugins(); statusText.Text = ""; SetTitle(); Application.AddMessageFilter(this); SetStyle(ControlStyles.OptimizedDoubleBuffer, true); m_Core = core; m_InitFilename = initFilename; OwnTemporaryLog = temp; logStatisticsToolStripMenuItem.Enabled = false; resolveSymbolsToolStripMenuItem.Enabled = false; resolveSymbolsToolStripMenuItem.Text = "Resolve Symbols"; m_Core.CaptureDialog = new Dialogs.CaptureDialog(m_Core, OnCaptureTrigger, OnInjectTrigger); m_Core.AddLogViewer(this); m_Core.AddLogProgressListener(this); }
public MainWindow(Core core, string initFilename, string remoteHost, uint remoteIdent, bool temp) { InitializeComponent(); if (SystemInformation.HighContrast) dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); Icon = global::renderdocui.Properties.Resources.icon; renderdocplugin.PluginHelpers.GetPlugins(); statusIcon.Text = ""; statusIcon.Image = null; statusText.Text = ""; SetTitle(); Application.AddMessageFilter(this); SetStyle(ControlStyles.OptimizedDoubleBuffer, true); m_Core = core; m_InitFilename = initFilename; m_InitRemoteHost = remoteHost; m_InitRemoteIdent = remoteIdent; OwnTemporaryLog = temp; resolveSymbolsToolStripMenuItem.Enabled = false; resolveSymbolsToolStripMenuItem.Text = "Resolve Symbols"; m_Core.CaptureDialog = new Dialogs.CaptureDialog(m_Core, OnCaptureTrigger, OnInjectTrigger); m_Core.AddLogViewer(this); m_Core.AddLogProgressListener(this); m_MessageTick = new System.Threading.Timer(MessageCheck, this as object, 500, 500); m_RemoteProbe = new System.Threading.Timer(RemoteProbe, this as object, 7500, 7500); }
public BufferViewer(Core core, bool meshview) { InitializeComponent(); Icon = global::renderdocui.Properties.Resources.icon; UI_SetupDocks(meshview); m_Zeroes = new byte[512]; for (int i = 0; i < 512; i++) m_Zeroes[i] = 0; m_VSIn.m_GridView = vsInBufferView; m_VSOut.m_GridView = vsOutBufferView; m_GSOut.m_GridView = gsOutBufferView; largeBufferWarning.Visible = false; byteOffset.Enabled = false; rowOffset.Font = byteOffset.Font = instanceIdxToolitem.Font = camSpeed.Font = fovGuess.Font = aspectGuess.Font = nearGuess.Font = farGuess.Font = core.Config.PreferredFont; m_ContextUIState = m_VSIn; DockHandler.GetPersistStringCallback = PersistString; exportToToolStripMenuItem.Enabled = exportToolItem.Enabled = false; m_Core = core; this.DoubleBuffered = true; SetStyle(ControlStyles.OptimizedDoubleBuffer, true); RenderHandle = render.Handle; render.Painting = true; render.MouseWheel += render_MouseWheel; render.MouseWheelHandler = render_MouseWheel; (render as Control).KeyDown += new KeyEventHandler(BufferViewer_KeyDown); (render as Control).KeyUp += new KeyEventHandler(BufferViewer_KeyUp); ResetConfig(); MeshView = meshview; if (!MeshView) { debugVertexToolItem.Visible = debugSep.Visible = false; instLabel.Visible = instSep.Visible = instanceIdxToolitem.Visible = false; syncViewsToolItem.Visible = false; highlightVerts.Visible = false; byteOffset.Text = "0"; Text = "Buffer Contents"; } else { byteOffset.Visible = false; byteOffsLab.Visible = false; byteOffset.Text = "0"; Text = "Mesh Output"; } m_Core.AddLogViewer(this); }
public BufferViewer(Core core, bool meshview) { InitializeComponent(); Icon = global::renderdocui.Properties.Resources.icon; UI_SetupDocks(meshview); m_Zeroes = new byte[512]; for (int i = 0; i < 512; i++) m_Zeroes[i] = 0; m_VSIn.m_GridView = vsInBufferView; m_VSOut.m_GridView = vsOutBufferView; m_GSOut.m_GridView = gsOutBufferView; m_ContextUIState = m_VSIn; DockHandler.GetPersistStringCallback = PersistString; exportToToolStripMenuItem.Enabled = exportToolItem.Enabled = false; m_Core = core; this.DoubleBuffered = true; SetStyle(ControlStyles.OptimizedDoubleBuffer, true); RenderHandle = render.Handle; render.Painting = true; render.MouseWheel += render_MouseWheel; render.MouseWheelHandler = render_MouseWheel; (render as Control).KeyDown += new KeyEventHandler(BufferViewer_KeyDown); (render as Control).KeyUp += new KeyEventHandler(BufferViewer_KeyUp); m_OutConfig.m_Type = OutputType.MeshDisplay; m_MeshDisplay.type = MeshDataStage.VSIn; m_MeshDisplay.fov = 90.0f; m_MeshDisplay.solidShadeMode = SolidShadeMode.None; solidShading.SelectedIndex = 0; m_MeshDisplay.thisDrawOnly = true; drawRange.SelectedIndex = 0; m_MeshDisplay.currentMeshColour = new FloatVector(1, 0, 0, 1); m_MeshDisplay.prevMeshColour = new FloatVector(0, 0, 0, 1); m_Arcball = new ArcballCamera(m_Camera); m_Flycam = new FlyCamera(m_Camera); m_CurrentCamera = m_Arcball; m_Updater = new TimedUpdate(10, TimerUpdate); m_Arcball.SpeedMultiplier = m_Flycam.SpeedMultiplier = (float)camSpeed.Value; fovGuess.Text = m_MeshDisplay.fov.ToString("G"); controlType.SelectedIndex = 0; MeshView = meshview; if (!MeshView) { debugVertexToolItem.Visible = debugSep.Visible = false; instLabel.Visible = instSep.Visible = instanceIdxToolitem.Visible = false; syncViewsToolItem.Visible = false; byteOffset.Text = "0"; Text = "Buffer Contents"; } else { byteOffset.Visible = false; byteOffsLab.Visible = false; byteOffset.Text = "0"; Text = "Mesh Output"; } m_Core.AddLogViewer(this); }
public ConstantBufferPreviewer(Core c, ShaderStageType stage, UInt32 slot, UInt32 idx) { InitializeComponent(); if (SystemInformation.HighContrast) toolStrip1.Renderer = new ToolStripSystemRenderer(); m_Core = c; Stage = stage; Slot = slot; ArrayIdx = idx; shader = m_Core.CurPipelineState.GetShader(stage); entryPoint = m_Core.CurPipelineState.GetShaderEntryPoint(stage); UpdateLabels(); ulong offs = 0; ulong size = 0; m_Core.CurPipelineState.GetConstantBuffer(Stage, Slot, ArrayIdx, out cbuffer, out offs, out size); m_Core.Renderer.BeginInvoke((ReplayRenderer r) => { SetVariables(r.GetCBufferVariableContents(shader, entryPoint, Slot, cbuffer, offs)); }); m_Core.AddLogViewer(this); }
public BufferViewer(Core core, bool meshview) { InitializeComponent(); if (SystemInformation.HighContrast) { dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); toolStrip1.Renderer = new ToolStripSystemRenderer(); toolStrip2.Renderer = new ToolStripSystemRenderer(); } Icon = global::renderdocui.Properties.Resources.icon; UI_SetupDocks(meshview); m_Zeroes = new byte[512]; for (int i = 0; i < 512; i++) m_Zeroes[i] = 0; m_VSIn.m_GridView = vsInBufferView; m_VSOut.m_GridView = vsOutBufferView; m_GSOut.m_GridView = gsOutBufferView; largeBufferWarning.Visible = false; byteOffset.Enabled = false; rowOffset.Font = byteOffset.Font = instanceIdxToolitem.Font = camSpeed.Font = fovGuess.Font = aspectGuess.Font = nearGuess.Font = farGuess.Font = core.Config.PreferredFont; m_ContextUIState = m_VSIn; DockHandler.GetPersistStringCallback = PersistString; exportToToolStripMenuItem.Enabled = exportToolItem.Enabled = false; m_Core = core; this.DoubleBuffered = true; SetStyle(ControlStyles.OptimizedDoubleBuffer, true); RecreateRenderPanel(); ResetConfig(); MeshView = meshview; if (!MeshView) { debugVertexToolItem.Visible = debugSep.Visible = false; instLabel.Visible = instSep.Visible = instanceIdxToolitem.Visible = false; syncViewsToolItem.Visible = false; highlightVerts.Visible = false; byteOffset.Visible = true; byteOffsLab.Visible = true; rowRange.Visible = true; rowRangeLab.Visible = true; byteOffset.Text = "0"; rowRange.Text = DefaultMaxRows.ToString(); Text = "Buffer Contents"; // only add log viewer for non-mesh output buffer viewers. // The mesh viewer is added in Core.GetMeshViewer() m_Core.AddLogViewer(this); } else { byteOffset.Visible = false; byteOffsLab.Visible = false; rowRange.Visible = false; rowRangeLab.Visible = false; byteOffset.Text = "0"; rowRange.Text = DefaultMaxRows.ToString(); Text = "Mesh Output"; } }