コード例 #1
0
ファイル: TextureViewer.cs プロジェクト: Anteru/renderdoc
        public void OnLogfileClosed()
        {
            if (IsDisposed) return;

            if(m_FSWatcher != null)
                m_FSWatcher.EnableRaisingEvents = false;
            m_FSWatcher = null;

            m_Output = null;

            m_TextureSettings.Clear();

            m_PrevSize = PointF.Empty;
            m_HighWaterStatusLength = 0;

            saveTex.Enabled = gotoLocationButton.Enabled = viewTexBuffer.Enabled = false;

            rwPanel.ClearThumbnails();
            roPanel.ClearThumbnails();

            RecreateRenderPanel();
            RecreateContextPanel();

            texturefilter.SelectedIndex = 0;

            m_TexDisplay = new TextureDisplay();
            m_TexDisplay.darkBackgroundColour = darkBack;
            m_TexDisplay.lightBackgroundColour = lightBack;

            m_TexDisplay.typeHint = FormatComponentType.None;

            PixelPicked = false;

            statusLabel.Text = "";
            m_PreviewPanel.Text = "Current";
            zoomOption.Text = "";
            mipLevel.Items.Clear();
            sliceFace.Items.Clear();
            rangeHistogram.SetRange(0.0f, 1.0f);

            channels.SelectedIndex = 0;
            overlay.SelectedIndex = 0;

            customShader.Items.Clear();
            m_CustomShaders.Clear();

            textureList.Items.Clear();

            render.Invalidate();

            renderHScroll.Enabled = false;
            renderVScroll.Enabled = false;

            hoverSwatch.BackColor = Color.Black;

            var tabs = m_PreviewPanel.Pane.TabStripControl.Tabs;

            for (int i = 0; i < tabs.Count; i++)
            {
                if (tabs[i].Content != m_PreviewPanel)
                {
                    (tabs[i].Content as DockContent).Close();
                    i--;
                }
            }

            (m_PreviewPanel as DockContent).Show();

            UI_UpdateTextureDetails();
            UI_UpdateChannels();
        }
コード例 #2
0
ファイル: TextureViewer.cs プロジェクト: Anteru/renderdoc
        private void checkerBack_Click(object sender, EventArgs e)
        {
            var defaults = new TextureDisplay();

            darkBack = m_TexDisplay.darkBackgroundColour = defaults.darkBackgroundColour;
            lightBack = m_TexDisplay.lightBackgroundColour = defaults.lightBackgroundColour;

            backcolorPick.Checked = false;
            checkerBack.Checked = true;

            m_Core.Renderer.BeginInvoke(RT_UpdateAndDisplay);

            if (m_Output == null)
            {
                render.Invalidate();
                pixelContext.Invalidate();
            }
        }
コード例 #3
0
 private static extern bool ReplayOutput_SetTextureDisplay(IntPtr real, TextureDisplay o);
コード例 #4
0
ファイル: TextureViewer.cs プロジェクト: Anteru/renderdoc
        public void InitFromPersistString(string str)
        {
            PersistData data = null;

            try
            {
                if (str.Length > GetType().ToString().Length)
                {
                    var reader = new StringReader(str.Substring(GetType().ToString().Length));

                    System.Xml.Serialization.XmlSerializer xs = new System.Xml.Serialization.XmlSerializer(typeof(PersistData));
                    data = (PersistData)xs.Deserialize(reader);

                    reader.Close();
                }
            }
            catch (System.Xml.XmlException)
            {
            }
            catch(InvalidOperationException)
            {
                // don't need to handle it. Leave data null and pick up defaults below
            }

            if (data == null || data.persistVersion != PersistData.currentPersistVersion)
            {
                data = PersistData.GetDefaults();
            }

            // fixup old incorrect checkerboard colours
            if (data.lightBack.x != data.darkBack.x)
            {
                TextureDisplay defaults = new TextureDisplay();
                data.lightBack = defaults.lightBackgroundColour;
                data.darkBack = defaults.darkBackgroundColour;
            }

            ApplyPersistData(data);
        }
コード例 #5
0
 public bool SetTextureDisplay(TextureDisplay o)
 {
     return(ReplayOutput_SetTextureDisplay(m_Real, o));
 }
コード例 #6
0
ファイル: TextureViewer.cs プロジェクト: n1nj4n/renderdoc
        private void checkerBack_Click(object sender, EventArgs e)
        {
            var defaults = new TextureDisplay();

            m_TexDisplay.darkBackgroundColour = defaults.darkBackgroundColour;
            m_TexDisplay.lightBackgroundColour = defaults.lightBackgroundColour;

            backcolorPick.Checked = false;
            checkerBack.Checked = true;

            m_Core.Renderer.BeginInvoke(RT_UpdateAndDisplay);
        }
コード例 #7
0
ファイル: TextureViewer.cs プロジェクト: n1nj4n/renderdoc
        public void OnLogfileClosed()
        {
            if (IsDisposed) return;

            if(m_FSWatcher != null)
                m_FSWatcher.EnableRaisingEvents = false;
            m_FSWatcher = null;

            m_Output = null;

            saveTex.Enabled = false;

            rtPanel.ClearThumbnails();
            texPanel.ClearThumbnails();

            texturefilter.SelectedIndex = 0;

            m_TexDisplay = new TextureDisplay();

            PixelPicked = false;

            statusLabel.Text = "";
            m_PreviewPanel.Text = "Current";
            zoomOption.Text = "";
            mipLevel.Items.Clear();
            sliceFace.Items.Clear();
            rangeHistogram.SetRange(0.0f, 1.0f);

            checkerBack.Checked = true;
            backcolorPick.Checked = false;

            checkerBack.Enabled = backcolorPick.Enabled = false;

            channels.SelectedIndex = 0;
            overlay.SelectedIndex = 0;

            customShader.Items.Clear();
            m_CustomShaders.Clear();

            textureList.Items.Clear();

            render.Invalidate();

            renderHScroll.Enabled = false;
            renderVScroll.Enabled = false;

            hoverSwatch.BackColor = Color.Black;

            var tabs = m_PreviewPanel.Pane.TabStripControl.Tabs;

            for (int i = 0; i < tabs.Count; i++)
            {
                if (tabs[i].Content != m_PreviewPanel)
                {
                    (tabs[i].Content as DockContent).Close();
                    i--;
                }
            }

            (m_PreviewPanel as DockContent).Show();

            UI_UpdateTextureDetails();
            UI_UpdateChannels();
        }
コード例 #8
0
ファイル: ReplayRenderer.cs プロジェクト: nsurface/renderdoc
 private static extern bool ReplayOutput_SetTextureDisplay(IntPtr real, TextureDisplay o);
コード例 #9
0
ファイル: ReplayRenderer.cs プロジェクト: nsurface/renderdoc
 public bool SetTextureDisplay(TextureDisplay o)
 {
     return ReplayOutput_SetTextureDisplay(m_Real, o);
 }