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;
相关推荐
浅陌sss9 小时前
Xlua中C#引用Lua变量,导致Lua侧的GC无法回收的原因及解决方法
c#·lua
棉晗榜9 小时前
c#模拟鼠标点击左键
c#
爱吃香蕉的阿豪11 小时前
在c#中虚方法和抽象类的区别
深度学习·c#·.netcore
晚秋大魔王13 小时前
C# 添加图标
c#·visual studio code
浅陌sss13 小时前
Unity中可靠的UDP实现
unity
shepherd枸杞泡茶13 小时前
第3章 .NETCore核心基础组件:3.1 .NET Core依赖注入
开发语言·c#·.net·.netcore
yuanpan14 小时前
C#的async异步方法里如果使用了await,那么它跟同步方法有什么区别?
开发语言·c#
CodeCraft Studio16 小时前
.NET版PDF处理控件Aspose.PDF教程:在 C# 中将 TIFF 文件转换为 PDF
pdf·c#·.net
斯内科16 小时前
C#使用文件读写操作实现仙剑五前传称号存档修改
c#·二进制·修改器
奔跑的犀牛先生18 小时前
unity学习46:反向动力学IK
unity