如何在Unity中显示概述的GUI框?

问题描述 投票:-3回答:1

我想在屏幕上显示带有彩色边框的透明GUI.Box。我该怎么办?

c# unity3d
1个回答
0
投票
  1. 创建具有透明中心和带有所需厚度的边框的PNG图像。图像的大小无关紧要,但是图像周围的边框应为所需的边框大小。例如,我在Pixilart上创建了一个2px绿色边框的64 x 64图像。

enter image description here

  1. 在项目中将PNG添加为2D纹理。您可以将图像从Finder拖到“资产”窗格中以执行此操作。

  2. 使用以下GUI.Box调用:

public Texture2D BoxBorder; // Set this to your border texture in the Unity Editor

void OnGUI()
{
    var borderSize = 2; // Border size in pixels
    var style = new GUIStyle();
    style.border = RectOffset(borderSize, borderSize, borderSize, borderSize);
    style.normal.background = BoxBorder;
    GUI.Box(new Rect(/* rect position */), GUIContent.none, style);
}
© www.soinside.com 2019 - 2024. All rights reserved.