📅  最后修改于: 2021-01-11 13:38:12             🧑  作者: Mango
GameObject具有使它们以某种方式运行的组件。当提到组件时,我们指的是GameObject的可用功能,例如,人体具有许多功能,例如移动,进食,交谈和观察。现在让我们说,我们希望人体运动更快。这意味着运动函数与该动作相关。因此,要使人体运动更快,我们需要创建一个可以访问运动组件的脚本,然后使用该脚本使人体运动更快。
就像现实生活中一样,不同的GameObject也可以具有不同的组件。例如,只能从摄像机访问摄像机组件。 Unity的程序员已经创建了许多组件,但是我们也可以创建自己的组件。
这意味着我们在“检查器”选项卡中看到的所有属性只是某种类型的变量。它们只是存储将由某些函数使用的数据。
如果将公共放在变量声明的开头,则意味着该变量将可见且可访问。它会在“检查器”面板中显示为属性,以便您可以更改存储在变量中的值。
例:
public int num = 10;
并非所有变量都需要公开。如果不需要在“检查器”面板中更改变量或从其他脚本访问变量。
例:
private int myNum = 2;
让我们创建一个名为myTest.cs的脚本,它具有一个int变量:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class myTest : MonoBehaviour
{
int num = 24;
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}
现在创建一个GameObject(从顶部菜单GameObject-> Create Empty)并将myTest.cs脚本文件添加到GameObject(在新创建的GameObject的“检查器”面板中)。现在它将在GameObject的Inspector中查看:
在这里,我们可以看到它具有myTest.cs脚本文件,但根本没有num变量。
让我们通过添加一个新变量来修改脚本,但是这次使用公共前缀。在编程语言中,公共意味着该值也可以被其他类看到。在Unity中,公共也意味着该变量将显示在检查器中。
修改后的myTest.cs脚本为:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class myTest : MonoBehaviour
{
int num = 24;
public string name;
void Start()
{
Debug.Log("My name is " + name);
}
// Update is called once per frame
void Update()
{
}
}
就像其他组件通常具有在“检查器”面板中可编辑的属性一样,我们也可以允许从“检查器”中编辑脚本中的值。
输入变量名称的值,然后按播放。您将看到该消息包括您输入的文本。
因此,在Unity中,必须将一个变量声明为public才能在Inspector中看到它。