要将一个 Monobehavior 显示在屏幕中心,并用一个 2D 框标出其大小,你可以按照以下步骤进行操作:

  1. 首先,你需要将你的 Monobehavior 添加到一个 Canvas 对象上。创建一个 Canvas 对象,或者在场景中已有的 Canvas 上添加一个空的 GameObject 作为子对象,并将你的 Monobehavior 组件添加到该 GameObject 上。

  2. 接下来,你需要将 Canvas 的 Render Mode 设置为 Screen Space - Camera。这样可以确保 Canvas 对象在屏幕中心显示,而不是根据其父对象的位置。

  3. 在 Canvas 上添加一个 RectTransform 组件,并将其大小调整为你想要的大小。你可以手动调整 RectTransform 的宽度和高度,或者使用 RectTransform 的锚点和偏移量属性来调整。

  4. 在 Canvas 上创建一个 Image 或 RawImage 对象作为子对象,并将其大小设置为与 RectTransform 相同。这个对象将用于绘制 2D 框。

  5. 编写一个脚本来管理 Monobehavior 的位置和大小。在脚本中,你可以使用 RectTransform 来设置 Monobehavior 的位置和大小。

下面是一个示例脚本的代码,用于将一个 Monobehavior 显示在屏幕中心,并用一个 2D 框标出其大小:

using UnityEngine;

public class CenterAndDrawBox : MonoBehaviour
{
    public RectTransform targetRect; // 目标 Monobehavior 的 RectTransform 组件
    public RectTransform boxRect; // 用于绘制 2D 框的 RectTransform 组件

    private void Start()
    {
        // 将目标 Monobehavior 移动到屏幕中心
        targetRect.anchoredPosition = Vector2.zero;

        // 获取目标 Monobehavior 的大小
        Vector2 targetSize = targetRect.sizeDelta;

        // 设置 2D 框的大小与目标 Monobehavior 相同
        boxRect.sizeDelta = targetSize;

        // 将 2D 框的位置设置为目标 Monobehavior 的位置
        boxRect.anchoredPosition = targetRect.anchoredPosition;
    }
}

在 Unity 编辑器中,将这个脚本添加到 Canvas 对象上,并将目标 Monobehavior 的 RectTransform 组件和用于绘制 2D 框的 RectTransform 组件分配给相应的变量。

这样,当你运行游戏时,目标 Monobehavior 将显示在屏幕中心,并且有一个 2D 框标记其大小。

Unity 将 Monobehavior 显示在屏幕中心并标出大小

原文地址: https://www.cveoy.top/t/topic/o72R 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录