我希望实现一个带有嵌套类的静态类,这些嵌套类可以在Unity Inspector中查看和修改。
如何实现这一目标有何建议?
我尝试过成功地使用嵌套的静态类,但是我无法将它们添加为组件以便在检查器中查看。
如何实现这一目标有何建议?
这是我的示例代码。如果没有Monobhavior,我就无法将其作为组件添加到检查器中。
using UnityEngine;
public static class Parameters
{
[System.Serializable]
public static class GroupA
{
public static float varA = 1f;
}
[System.Serializable]
public static class GroupB
{
public static float varB = 2f;
}
}
然后我可以调用它,例如。Parameters.GroupA.varA;
提前感谢,抱歉我的代码臭。
最好的,罗布
3条答案
按热度按时间nwnhqdif1#
我用“奥丁督察”来对付这种情况。
希望能帮上忙最好。
ecbunoof2#
我最终使用了一个第二次运行的单例。为此我在父类中添加了:
并且对于每个内部类
我删除了所有其他静态引用。
6ljaweal3#
您的用例不需要第三方库。
而不是使用
static
在这一点上,我会使用ScriptableObject
。这些是资产,因此任何东西都可以引用它们,它们可以存储序列化值并实现自己的逻辑。
因此,在您的情况下,
然后通过
Assets
→右键单击→创建→参数创建一个资产现在,您可以像往常一样通过检查器调整值。
最后,每当您需要访问它们时,您都有一个字段
拖入相应的资产并通过以下方式访问值: