UE4元数据关键字的应用与含义(一)

以下是UE4中用于定义蓝图变量的元数据(metadata)的所有关键字及其解释和作用:

  • BlueprintReadOnly:表示该变量只能在蓝图中进行读取操作,不能在蓝图中进行写入操作。常用于定义只读变量。
  • BlueprintReadWrite:表示该变量可以在蓝图编辑器中进行读写操作,包括在实例化蓝图时可以在Details面板中进行编辑,也可以在蓝图中进行读写操作。常用于定义可读写变量。
  • EditAnywhere:表示该变量可以在蓝图编辑器中进行读写操作,包括在实例化蓝图时可以在Details面板中进行编辑,也可以在蓝图中进行读写操作。常用于定义可编辑变量。
  • EditDefaultsOnly:表示该变量只能在蓝图类的默认值中进行编辑,而不能在实例化蓝图时进行编辑。常用于定义只能在类级别上编辑的变量。
  • Category:表示该变量在蓝图编辑器中显示在指定的类别下。常用于将变量分组显示。
  • DisplayName:表示该变量在蓝图编辑器中显示的名称。常用于自定义变量的显示名称。
  • Tooltip:表示该变量在蓝图编辑器中显示的提示信息。常用于提供变量的说明和提示信息。
  • EditCondition:表示该变量的编辑条件,只有在满足特定条件时才会在蓝图编辑器中显示。常用于根据其他变量的值来控制变量的可见性。
  • meta:用于定义其他元数据,可以包含多个关键字和参数。常用于自定义元数据。
  • SaveGame:表示该变量在保存游戏状态时会被保存。常用于需要保存的变量。
  • AdvancedDisplay:表示该变量在蓝图编辑器中显示在“Advanced”类别下。常用于将变量分组显示。
  • AssetRegistrySearchable:表示该变量可以在资产浏览器中进行搜索。常用于需要在资产浏览器中搜索的变量。
  • BlueprintReadOnlyWithVariants:表示该变量只能在蓝图中进行读取操作,不能在蓝图中进行写入操作,并且可以在派生类中进行重载。常用于定义只读变量,并且允许在派生类中进行重载。
  • BlueprintSetter:表示该变量的Setter函数名称。常用于自定义Setter函数的名称。
  • BlueprintGetter:表示该变量的Getter函数名称。常用于自定义Getter函数的名称。
  • ClampMin:表示该变量的最小值。常用于限制变量的最小值。
  • ClampMax:表示该变量的最大值。常用于限制变量的最大值。
  • UIMin:表示该变量在蓝图编辑器中的最小值。常用于限制变量在蓝图编辑器中的最小值。
  • UIMax:表示该变量在蓝图编辑器中的最大值。常用于限制变量在蓝图编辑器中的最大值。
  • SliderExponent:表示该变量在蓝图编辑器中的滑动条指数。常用于自定义滑动条指数。
  • SliderMin:表示该变量在蓝图编辑器中的滑动条最小值。常用于限制变量在蓝图编辑器中的滑动条最小值。
  • SliderMax:表示该变量在蓝图编辑器中的滑动条最大值。常用于限制变量在蓝图编辑器中的滑动条最大值。
  • ExposeOnSpawn:表示该变量在实例化蓝图时可以在Details面板中进行编辑。常用于在实例化蓝图时设置变量的值。
  • HideInDetailsView:表示该变量在蓝图编辑器中不显示在Details面板中。常用于隐藏变量。
  • HideInListView:表示该变量在蓝图编辑器中不显示在变量列表中。常用于隐藏变量。
  • VisibleAnywhere:表示该变量在蓝图编辑器中显示在变量列表中,并且可以在蓝图中进行读取操作。常用于定义可读变量。
  • VisibleDefaultsOnly:表示该变量在蓝图编辑器中显示在变量列表中,并且只能在蓝图类的默认值中进行读取操作。常用于定义只读变量。
  • VisibleInstanceOnly:表示该变量在蓝图编辑器中不显示在变量列表中,并且只能在实例化蓝图时进行读取操作。常用于定义只读变量。
  • AllowPrivateAccess:表示该变量可以在蓝图类的成员函数中进行读写操作。常用于定义只能在类内部访问的变量。
  • AssetReference:表示该变量是一个资产引用。常用于引用资产。
  • AssetPtr:表示该变量是一个资产指针。常用于引用资产。
  • AssetSubclassOf:表示该变量是一个资产子类。常用于引用资产子类。
  • BlueprintAssignable:表示该变量是一个蓝图事件。常用于定义蓝图事件。
  • BlueprintCallable:表示该变量是一个蓝图函数。常用于定义蓝图函数。
  • BlueprintCosmetic:表示该变量是一个蓝图美化变量。常用于定义蓝图美化变量。
  • BlueprintInternalUseOnly:表示该变量只能在蓝图类的成员函数中进行读写操作。常用于定义只能在类内部访问的变量。
  • BlueprintProtected:表示该变量只能在蓝图类及其派生类的成员函数中进行读写操作。常用于定义只能在类及其派生类内部访问的变量。
  • BlueprintPure:表示该变量是一个纯蓝图函数,不会修改任何状态。常用于定义纯蓝图函数。
  • BlueprintSetterTimer:表示该变量的Setter函数名称,并且在设置变量时会启动一个定时器。常用于自定义Setter函数,并且在设置变量时启动定时器。
  • BlueprintTransient:表示该变量在蓝图编辑器中不显示在变量列表中,并且不会被保存。常用于定义临时变量。
  • BlueprintReadOnlyTimer:表示该变量只能在蓝图中进行读取操作,不能在蓝图中进行写入操作,并且在读取变量时会启动一个定时器。常用于定义只读变量,并且在读取变量时启动定时器。
  • CategoryShowOnly:表示该变量在蓝图编辑器中显示在指定的类别下,并且只显示该类别下的变量。常用于将变量分组显示,并且只显示指定类别下的变量。
  • Deprecated:表示该变量已经过时,不建议使用。常用于标记已经过时的变量。
  • DisableEditOnInstance:表示该变量在实例化蓝图时不能在Details面板中进行编辑。常用于定义只读变量。
  • DisableEditOnTemplate:表示该变量在蓝图类的默认值中不能进行编辑。常用于定义只读变量。
  • EditFixedSize:表示该变量在蓝图编辑器中显示为固定大小的数组。常用于定义固定大小的数组。
  • EditInline:表示该变量在蓝图编辑器中显示为内联编辑器。常用于定义内联编辑器。
  • EditInstanceOnly:表示该变量在实例化蓝图时可以在Details面板中进行编辑。常用于在实例化蓝图时设置变量的值。
  • EditInlineNew:表示该变量在蓝图编辑器中显示为内联编辑器,并且可以在蓝图中创建新的对象。常用于定义内联编辑器,并且可以在蓝图中创建新的对象。
  • EditInlineUse:表示该变量在蓝图编辑器中显示为内联编辑器,并且可以在蓝图中使用现有的对象。常用于定义内联编辑器,并且可以在蓝图中使用现有的对象。
  • EditReference:表示该变量是一个引用变量。常用于定义引用变量。
  • EditConditionOnly:表示该变量的编辑条件,只有在满足特定条件时才会在蓝图编辑器中显示,并且不能在蓝图中进行读写操作。常用于根据其他变量的值来控制变量的可见性,并且不能在蓝图中进行读写操作。
  • Interp:表示该变量是一个插值变量。常用于定义插值变量。
  • InterpCurveEdSetup:表示该变量是一个插值曲线。常用于定义插值曲线。
  • InterpCurvePoint:表示该变量是一个插值曲线的点。常用于定义插值曲线的点。
  • InterpProperty:表示该变量是一个插值属性。常用于定义插值属性。
  • InterpShowOnlyInnerProperties:表示该变量在蓝图编辑器中只显示内部属性。常用于隐藏插值属性的内部属性。
  • InterpStep:表示该变量是一个插值步骤。常用于定义插值步骤。
  • InterpTimePoint:表示该变量是一个插值时间点。常用于定义插值时间点。
  • NoClear:表示该变量在清除蓝图时不会被清除。常用于定义不会被清除的变量。
  • NonPIEDuplicateTransient:表示该变量在复制蓝图时不会被复制。常用于定义不会被复制的变量。
  • NotReplicated:表示该变量不会被复制到网络上。常用于定义不需要在网络上同步的变量。
  • OnlyPlaceable:表示该变量只能在蓝图类的默认值中进行编辑,而不能在实例化蓝图时进行编辑。常用于定义只能在类级别上编辑的变量。
  • PerObjectLocalizedDesc:表示该变量在蓝图编辑器中显示的本地化描述。常用于提供变量的本地化描述。
  • PerObjectLocalizedDisplayName:表示该变量在蓝图编辑器中显示的本地化名称。常用于提供变量的本地化名称。
  • PersistentGuid:表示该变量的持久化GUID。常用于定义持久化GUID。
  • ReadOnly:表示该变量只能在蓝图中进行读取操作,不能在蓝图中进行写入操作。常用于定义只读变量。
  • Replicated:表示该变量会被复制到网络上。常用于定义需要在网络上同步的变量。
  • ReplicatedUsing:表示该变量在复制到网络上时会调
  • 用指定的函数。常用于自定义复制函数。
  • SoftObject:表示该变量是一个软引用变量。常用于定义软引用变量。
  • SoftClass:表示该变量是一个软引用类。常用于定义软引用类。
  • Transient:表示该变量在蓝图编辑器中不显示在变量列表中,并且不会被保存。常用于定义临时变量。
  • VisibleAnywhereBlueprintReadOnly:表示该变量在蓝图编辑器中显示在变量列表中,并且可以在蓝图中进行读取操作,但不能在蓝图中进行写入操作。常用于定义只读变量。
  • WorldContext:表示该变量是一个世界上下文变量。常用于定义世界上下文变量。
  • 这些关键字可以用于定义各种元数据,包括变量的可见性、编辑性、限制条件、默认值、本地化、复制等等。具体使用哪些关键字取决于具体的需求。

以上是UE4中用于定义蓝图变量的元数据的所有关键字,但是还有一些其他的元数据关键字,如下:

  • BlueprintReadOnlyWithoutExport:表示该变量只能在蓝图中进行读取操作,不能在蓝图中进行写入操作,并且不会被导出到C++代码中。常用于定义只读变量,并且不需要导出到C++代码中。
  • BlueprintSetterWithoutExport:表示该变量的Setter函数名称,并且不会被导出到C++代码中。常用于自定义Setter函数的名称,并且不需要导出到C++代码中。
  • BlueprintGetterWithoutExport:表示该变量的Getter函数名称,并且不会被导出到C++代码中。常用于自定义Getter函数的名称,并且不需要导出到C++代码中。
  • BlueprintInternalUseOnlyWithoutExport:表示该变量只能在蓝图类的成员函数中进行读写操作,并且不会被导出到C++代码中。常用于定义只能在类内部访问的变量,并且不需要导出到C++代码中。
  • 这些关键字与前面提到的关键字类似,但是不会被导出到C++代码中,常用于只在蓝图中使用的变量和函数。

技术交流群: 769397359

 教程链接戳这里:掌握AI-掌控未来-学习视频教程-腾讯课堂

猜你喜欢

转载自blog.csdn.net/u013007305/article/details/130450354