Unity复制对象时让私有变量也被复制的简单方法

Unity复制对象时,如果一个变量为公共变量(public),那么这个变量的值会被复制到新的对象中去,但是如果一个变量是私有变量(private),默认是不会被复制的,如果希望被复制,可以在其前面添加[SerializeField]属性。但是这样也产生一个问题,这个私有变量就会允许在Inspect的面板中被修改,如果我们不希望这个私有变量在Inspect的面板中被修改,可以在[SerializeField]属性后面再添加一个[HideInInspector]属性,这样在Inspect的面板中就看不到这个变量了,做法参考如下:

cs 复制代码
	[SerializeField]
	[HideInInspector]
	int _countW = 1;
	public int countW => _countW;

	[SerializeField]
	[HideInInspector]
	int _countH = 1;
	public int countH => _countH;

	[SerializeField]
	[HideInInspector]
	float _frameRate = 0;
	public float frameRate => _frameRate;
相关推荐
ytttr8733 小时前
基于 C# WinForm 实现的 电影院售票系统
开发语言·c#
qq 180809514 小时前
多智能体编队重构与协同避障方法探索
c#
龚子亦4 小时前
【Unity开发】热更新学习——HybridCLR框架
学习·unity·游戏引擎·热更新
kylezhao20196 小时前
C#变量 + 工业常用数据类型:重点 byte/int/float
开发语言·c#·c#上位机
bugcome_com6 小时前
C# 中 Overload(重载)与 Override(重写)的核心区别与实战解析
开发语言·c#
龚子亦7 小时前
【GameFramework框架】FSM使用
学习·unity·游戏开发·游戏框架
JAVA+C语言7 小时前
C#——接口
开发语言·c#
许泽宇的技术分享7 小时前
AgentFramework:错误处理策略
开发语言·c#
龚子亦8 小时前
【Unity开发】安卓应用开发中,用户进行权限请求
android·unity·安卓权限
kylezhao20198 小时前
C#23种设计模式-单例模式(Singleton)详解与应用
单例模式·设计模式·c#