Exemple #1
0
        protected override void UpdateInternal()
        {
            IsHovered = false;

            var windowSize = Manager.NativeManager.GetWindowSize();

            // Menu
            windowSize.X = System.Math.Max(1, windowSize.X - 20);
            windowSize.Y = System.Math.Max(1, windowSize.Y - 50);

            var p = Manager.Native.RenderView((int)windowSize.X, (int)windowSize.Y);

            Manager.NativeManager.Image(p, (int)windowSize.X, (int)windowSize.Y);

            IsHovered = Manager.NativeManager.IsWindowHovered();

            // Enum
            renderMode.Update();

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.Text("Draw : " + Manager.Native.GetAndResetDrawCall().ToString());

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.Text("Vertex : " + Manager.Native.GetAndResetVertexCount().ToString());
        }
        protected override void UpdateInternal()
        {
            float textHeight  = Manager.NativeManager.GetTextLineHeight();
            float frameHeight = Manager.NativeManager.GetFrameHeightWithSpacing();
            float dpiScale    = Manager.DpiScale;
            float padding     = 4.0f * dpiScale;

            IsHovered = false;

            var contentSize = Manager.NativeManager.GetContentRegionAvail();

            // Menu
            contentSize.X = System.Math.Max(1, contentSize.X);
            contentSize.Y = System.Math.Max(1, contentSize.Y - frameHeight - padding);

            var p = Manager.Native.RenderView((int)contentSize.X, (int)contentSize.Y);

            Manager.NativeManager.Image(p, (int)contentSize.X, (int)contentSize.Y);

            IsHovered = Manager.NativeManager.IsWindowHovered();

            Manager.NativeManager.Indent(padding);

            // Enum
            Manager.NativeManager.PushItemWidth(textHeight * 7.0f);
            renderMode.Update();
            Manager.NativeManager.PopItemWidth();

            Manager.NativeManager.SameLine();

            Manager.NativeManager.PushItemWidth(textHeight * 2.5f);
            viewMode.Update();
            Manager.NativeManager.PopItemWidth();

            string perfText =
                "D:" + Manager.Native.GetAndResetDrawCall().ToString("D3") + "  " +
                "V:" + Manager.Native.GetAndResetVertexCount().ToString("D5") + "  " +
                "P:" + Manager.Native.GetInstanceCount().ToString("D5") + " ";

            Manager.NativeManager.SameLine(contentSize.X - Manager.NativeManager.CalcTextSize(perfText).X);

            // Display performance information
            Manager.NativeManager.Text(perfText);
            if (Manager.NativeManager.IsItemHovered())
            {
                Manager.NativeManager.SetTooltip(
                    "D: Draw calls of current rendering.\n" +
                    "V: Vertex count of current rendering.\n" +
                    "P: Particle count of current rendering.");
            }
        }
        protected override void UpdateInternal()
        {
            float dpiScale = Manager.DpiScale;

            IsHovered = false;

            var contentSize = Manager.NativeManager.GetContentRegionAvail();

            // Menu
            contentSize.X = System.Math.Max(1, contentSize.X);
            contentSize.Y = System.Math.Max(1, contentSize.Y - 30 * dpiScale);

            var p = Manager.Native.RenderView((int)contentSize.X, (int)contentSize.Y);

            Manager.NativeManager.Image(p, (int)contentSize.X, (int)contentSize.Y);

            IsHovered = Manager.NativeManager.IsWindowHovered();

            // Enum
            renderMode.Update();

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.Text("Draw : " + Manager.Native.GetAndResetDrawCall().ToString());

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.Text("Vertex : " + Manager.Native.GetAndResetVertexCount().ToString());

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.Text("Particle : " + Manager.Native.GetInstanceCount().ToString());

            Manager.NativeManager.Spacing();
        }
Exemple #4
0
        protected override void UpdateInternal()
        {
            float dpiScale = Manager.DpiScale;

            IsHovered = false;

            var contentSize = Manager.NativeManager.GetContentRegionAvail();

            // Menu
            contentSize.X = System.Math.Max(1, contentSize.X);
            contentSize.Y = System.Math.Max(1, contentSize.Y - 30 * dpiScale);

            var p = Manager.Native.RenderView((int)contentSize.X, (int)contentSize.Y);

            Manager.NativeManager.Image(p, (int)contentSize.X, (int)contentSize.Y);

            IsHovered = Manager.NativeManager.IsWindowHovered();

            Manager.NativeManager.Indent(4 * dpiScale);

            // Enum
            Manager.NativeManager.PushItemWidth(120 * dpiScale);
            renderMode.Update();
            Manager.NativeManager.PopItemWidth();

            Manager.NativeManager.SameLine();

            Manager.NativeManager.PushItemWidth(50 * dpiScale);
            viewMode.Update();
            Manager.NativeManager.PopItemWidth();

            Manager.NativeManager.SameLine(contentSize.X - 170 * dpiScale);

            Manager.NativeManager.PushItemWidth(50 * dpiScale);

            // DrawCall
            Manager.NativeManager.InputText("##DrawCalls", "D:" + Manager.Native.GetAndResetDrawCall().ToString(), swig.InputTextFlags.ReadOnly);
            if (Manager.NativeManager.IsItemHovered())
            {
                Manager.NativeManager.SetTooltip("Draw calls of current rendering.");
            }

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.InputText("##VertexCount", "V:" + Manager.Native.GetAndResetVertexCount().ToString(), swig.InputTextFlags.ReadOnly);
            if (Manager.NativeManager.IsItemHovered())
            {
                Manager.NativeManager.SetTooltip("Vertex count of current rendering.");
            }

            Manager.NativeManager.SameLine();

            // DrawCall
            Manager.NativeManager.InputText("##ParticleCount", "P:" + Manager.Native.GetInstanceCount().ToString());
            if (Manager.NativeManager.IsItemHovered())
            {
                Manager.NativeManager.SetTooltip("Particle count of current rendering.");
            }

            Manager.NativeManager.PopItemWidth();

            Manager.NativeManager.Spacing();
        }