【发布时间】:2017-08-29 11:19:28
【问题描述】:
在 Unity 中,您必须告诉引擎哪些是要序列化的参数。 不仅如此,其中一些是不可序列化的(例如字典),您需要非常清楚和仔细地指定它。
我真的很困惑,在任何书籍或官方页面中都几乎没有文档。连论坛里的问题都没有。似乎只是一个蓝图……而不是真的。
当您保存(序列化)以及进入播放模式时,我需要知道 编辑器变量状态的状态是否存储在场景中。
如何创建一个组件的实例,其 UPROPERTIES 值也在编辑器中设置,但使用来自其他文件的宏创建。这些是非常动态的。那些也被存储了? (我知道每次打开场景时都会执行构造函数。我只对这种情况感兴趣......不通过代码创建实例,因为您可以设置这些值硬编码)
我正在运行测试,但会提供有关这一切的一些信息。也许 Unreal 存储了每一件东西,这就是为什么没有关于它的信息......
【问题讨论】:
-
事实上,我在这里添加了一个指向我刚刚发布的关于 SerializeText UPROPERTY 参数的另一个问题的链接,该参数有点无证,令人惊讶的是无法编译。 stackoverflow.com/questions/45937658/… 这是我在 Unreal 上发现的唯一关于序列化的东西......
-
在 Unity 中,默认情况下,标记为
[Serializable]的每个类型都是(如名称所示)可序列化的。检查器可见性和序列化之间存在差异,因此 Unity(同样,默认情况下)仅显示public和[Serializable]fields。您可以用[SerializeField]装饰privatefields 以使其可见。 -
嘿@m.rogalski,这是一个答案吗?:我问的是如何在 Unreal 中做到这一点,而不是 Unity。
-
如果它是一个答案它不会放在 cmets 部分。我的评论只是对您关于 Unity 序列化的陈述的澄清。
-
太酷了!谢谢!
标签: serialization properties macros unreal-engine4