Unity 控制脚本中的变量是否在Inspector视图中显示

默认情况

默认情况下, p r i v a t e private private不显示, p u b l i c public public显示:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    private Rigidbody2D rigidbody2D;
    private Animator animator;

    public float speed = 5f;
    public float jumpForce = 5f;
}

在这里插入图片描述

SerializeField

通过在 p r i v a t e private private前面或上面添加 [ S e r i a l i z e F i e l d ] [SerializeField] [SerializeField]可以让我们观察到私有变量的值:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    [SerializeField]
    private Rigidbody2D rigidbody2D;
    private Animator animator;

    public float speed = 5f;
    public float jumpForce = 5f;
}

在这里插入图片描述

Space

[ S p a c e ] [Space] [Space]可以在 I n s p e c t o r Inspector Inspector视图中添加隔行:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    [SerializeField]
    private Rigidbody2D rigidbody2D;
    private Animator animator;
    [Space]
    public float speed = 5f;
    public float jumpForce = 5f;
}

在这里插入图片描述

Header

[ H e a d e r ( … … ) ] [Header(……)] [Header()]相当于 I n s p e c t o r Inspector Inspector视图下的注释(分类):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    [SerializeField]
    private Rigidbody2D rigidbody2D;
    private Animator animator;
    [Header("速度设定")]
    public float speed = 5f;
    public float jumpForce = 5f;
}

在这里插入图片描述

Range

[ R a n g e ( m i n , m a x ) ] [Range(min,max)] [Range(min,max)]可以给一个 i n t 、 f l o a t int、float intfloat变量限定取值范围:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    [SerializeField]
    private Rigidbody2D rigidbody2D;
    private Animator animator;
    [Header("速度设定")]
    [Range(3f,7f)]
    public float speed = 5f;
    public float jumpForce = 5f;
}

在这里插入图片描述

HideInInspector

[ H i d e I n I n s p e c t o r ] [HideInInspector] [HideInInspector]可以让这个变量不显示在 I n s p e c t o r Inspector Inspector面板中,当你调整了某个变量并且不想再修改后,就可以让他隐藏起来:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Test : MonoBehaviour
{
    [SerializeField]
    private Rigidbody2D rigidbody2D;
    private Animator animator;
    [Header("速度设定")]
    [Range(3f,7f)]
    public float speed = 5f;
    [HideInInspector]
    public float jumpForce = 5f;
}

在这里插入图片描述

Unity,为脚本分配变量主要是通过创建一个新的脚本文件,并在其声明变量。以下是简单的步骤: 1. **创建新脚本**: - 在Unity的Assets > Create New Folder(如果需要的话新建一个文件夹)> Scripts 文件夹下右键点击,然后选择 "Create" -> "C# Script"。取个名字例如 "MyScript.cs",然后保存。 2. **添加变量**: - 打开刚创建的 "MyScript.cs" 文件,使用 `private`、`public` 或 `SerializeField` 关键字(对于Unity Editor UI)来声明变量。例如,如果你想声明一个整数类型的公共变量,可以这样写: ```csharp public int myVariable; ``` 3. **将脚本附加到游戏对象**: - 将这个脚本拖放到场景的某个游戏对象上,或者在Inspector视图双击 "Add Component",搜索并选择你的脚本。 4. **访问和修改变量**: - 在游戏运行过程,可以在代码(如 Update() 函数)直接访问和修改这个变量,也可以在UnityInspector视图编辑其值。例如,在Editor模式下: ```csharp void Start() { Debug.Log("myVariable = " + myVariable); } ``` - 当游戏运行时,可以在Game Objects的Inspector看到并修改变量。 5. **注意变量类型**: - 考虑到性能,尽量避免在Update等频繁调用的函数创建大量的临时变量。 6. **保存并构建**: - 完成编辑后记得保存脚本,并可能需要编译(在Project窗口,点击Build Settings或File > Build Settings检查是否需要设置编译设置)。 以上就是在Unity分配和使用脚本变量的基本流程。如果你有特定的变量需求或疑问,随时提问哦。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值