Пример #1
0
 protected override void Draw(PrimitiveRenderer2D renderer)
 {
     renderer.Color = BackgroundColor;
     renderer.FillRectangle(new Vector4(GlobalX, GlobalY, GlobalX + Width, GlobalY + Height));
     renderer.Color = BorderColor;
     renderer.DrawRectangleInside(new Vector4(GlobalX, GlobalY, GlobalX + Width, GlobalY + Height), BorderWidth);
 }
Пример #2
0
    protected override void Draw(PrimitiveRenderer2D renderer)
    {
        var area = new Vector4(GlobalX, GlobalY, GlobalX + Width, GlobalY + Height);

        renderer.Color = TextColor;
        renderer.DrawText(Text, Format, area);
    }
Пример #3
0
    public static DebugUiManager Create(GameObject gameObject, PrimitiveRenderer2D renderer)
    {
        var self = gameObject.GetComponent <DebugUiManager>();

        if (self != null)
        {
            return(self);
        }

        self = gameObject.AddComponent <DebugUiManager>();
        self.Initialize(renderer);

        var rectTransform = self.rectTransform;

        Debug.Assert(rectTransform != null, "RectTransformがない!canvasの下にあるGameObjectを指定してください!");
        if (rectTransform)
        {
            rectTransform.anchorMin = new Vector2(0f, 0f);
            rectTransform.anchorMax = new Vector2(1f, 1f);
            rectTransform.offsetMin = new Vector2(0f, 0f);
            rectTransform.offsetMax = new Vector2(0f, 0f);
        }

        return(self);
    }
Пример #4
0
    void OnDestroy()
    {
        if (primitiveRenderer != null)
        {
            primitiveRenderer.Dispose();
            primitiveRenderer = null;
        }

        debugUiManager.Dispose();
    }
Пример #5
0
    public void Dispose()
    {
        primitiveRenderer = null;
        input             = null;

        root.Dispose();
        root = null;

        if (instances != null)
        {
            instances.Clear();
            instances = null;
        }
    }
Пример #6
0
    protected override void Draw(PrimitiveRenderer2D renderer)
    {
        base.Draw(renderer);

        var area = new Vector4(GlobalX, GlobalY, GlobalX + Width, GlobalY + Height);

        renderer.DrawText(Text, new PrimitiveRenderer2D.TextFormat()
        {
            Alignment         = PrimitiveRenderer2D.Alignment.Center,
            VerticalAlignment = PrimitiveRenderer2D.VerticalAlignment.Middle,
            Overflow          = PrimitiveRenderer2D.Overflow.Shrink,
            FontSize          = FontSize,
            LineHeight        = FontSize * 1.5f,
        }, area);
    }
Пример #7
0
    public void DrawRecursive(PrimitiveRenderer2D renderer)
    {
        if (!Enabled)
        {
            return;
        }

        Draw(renderer);

        var child = firstChild;

        while (child != null)
        {
            child.DrawRecursive(renderer);
            child = child.nextSibling;
        }
    }
Пример #8
0
    // Use this for initialization
    void Start()
    {
        if (primitiveRenderer == null)
        {
            primitiveRenderer = new PrimitiveRenderer2D(
                camera,
                textShader,
                texturedShader,
                font);
        }
        debugUiManager = DebugUiManager.Create(gameObject, primitiveRenderer);

        serverManager.debugUiManager = debugUiManager;

        var panel = new DebugUiPanel(manager: debugUiManager)
        {
            LocalX          = 10f,
            LocalY          = 10f,
            BackgroundColor = new Color32(0, 255, 0, 100),
            BorderColor     = new Color32(0, 0, 0, 255)
        };

        var panel2 = new DebugUiPanel(manager: debugUiManager)
        {
            BackgroundColor = new Color32(255, 0, 255, 100),
            BorderColor     = new Color32(0, 0, 0, 255)
        };

        var button = new DebugUiButton(debugUiManager)
        {
            LocalX = 100,
            LocalY = 200,
            Width  = 100,
            Height = 50,
            Text   = "ボタン1"
        };

        panel.AddChildAuto(button);

        var text = new DebugUiText("テキスト1\nテキスト2\nテキスト3", debugUiManager);

        text.Width                    = 300f;
        text.Height                   = 300f;
        text.TextColor                = new Color32(128, 0, 255, 255);
        text.Format.Alignment         = PrimitiveRenderer2D.Alignment.Center;
        text.Format.VerticalAlignment = PrimitiveRenderer2D.VerticalAlignment.Middle;
        panel.AddChildAuto(text);

        button = new DebugUiButton(debugUiManager)
        {
            LocalX = 200,
            LocalY = 200,
            Width  = 150,
            Height = 70,
            Text   = "ボタン\n2"
        };
        panel.AddChildAuto(button);

        panel.AdjustSize();
        panel2.AddChild(panel);
        panel2.AdjustSize();
        debugUiManager.Add(panel2);

        debugUiManager.OutputHierarchy();
    }
Пример #9
0
 protected virtual void Draw(PrimitiveRenderer2D renderer)
 {
 }
Пример #10
0
 public void Initialize(PrimitiveRenderer2D renderer)
 {
     primitiveRenderer = renderer;
     input             = new Input();
     root = new DebugUiControl.Root();
 }