在Unity中,可以使用静态变量、单例模式、ScriptableObject等方式来实现两个文件的数据共享。

  1. 静态变量:在一个文件中定义一个静态变量,另一个文件中可以直接访问这个静态变量。
public static class SharedData
{
    public static int score;
}

// 在另一个文件中访问
Debug.Log(SharedData.score);
  1. 单例模式:在一个文件中定义一个单例,其他文件可以通过这个单例来访问数据。
public class SharedData : MonoBehaviour
{
    public static SharedData Instance;

    public int score;

    private void Awake()
    {
        if (Instance == null)
        {
            Instance = this;
            DontDestroyOnLoad(gameObject);
        }
        else
        {
            Destroy(gameObject);
        }
    }
}

// 在另一个文件中访问
Debug.Log(SharedData.Instance.score);
  1. ScriptableObject:创建一个ScriptableObject,保存数据,并将ScriptableObject传递给其他文件。
[CreateAssetMenu(fileName = "SharedData", menuName = "Data/SharedData")]
public class SharedData : ScriptableObject
{
    public int score;
}

// 在另一个文件中访问
public SharedData sharedData;

void Start()
{
    sharedData = Resources.Load<SharedData>("SharedData");
    Debug.Log(sharedData.score);
}
unity怎么把两个文件的数据共享

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

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