UnrealEngine KeyWords,修饰变量函数

1. 常用

这些关键字可以用于定义各种元数据,包括变量的可见性、编辑性、限制条件、默认值、本地化、复制等等。具体使用哪些关键字取决于具体的需求。
以下是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:表示该变量是一个世界上下文变量。常用于定义世界上下文变量。

2. 扩展

** 以上是UE4中用于定义蓝图变量的元数据的所有关键字,但是还有一些其他的元数据关键字,如下: **
这些关键字与前面提到的关键字类似,但是不会被导出到C++代码中,常用于只在蓝图中使用的变量和函数。

  • BlueprintReadOnlyWithoutExport:表示该变量只能在蓝图中进行读取操作,不能在蓝图中进行写入操作,并且不会被导出到C++代码中。常用于定义只读变量,并且不需要导出到C++代码中。
  • BlueprintSetterWithoutExport:表示该变量的Setter函数名称,并且不会被导出到C++代码中。常用于自定义Setter函数的名称,并且不需要导出到C++代码中。
  • BlueprintGetterWithoutExport:表示该变量的Getter函数名称,并且不会被导出到C++代码中。常用于自定义Getter函数的名称,并且不需要导出到C++代码中。
  • BlueprintInternalUseOnlyWithoutExport:表示该变量只能在蓝图类的成员函数中进行读写操作,并且不会被导出到C++代码中。常用于定义只能在类内部访问的变量,并且不需要导出到C++代码中。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unreal Engine 4 Scripting with C++ Cookbook 2016 | ISBN-10: 1785885545 | 431 pages | PDF | 7 MB Key Features A straightforward and easy-to-follow format A selection of the most important tasks and problems Carefully organized instructions to solve problems efficiently Clear explanations of what you did Solutions that can be applied to solve real-world problems Book Description Unreal Engine 4 (UE4) is a complete suite of game development tools made by game developers, for game developers. With more than 100 practical recipes, this book is a guide showcasing techniques to use the power of C++ scripting while developing games with UE4. It will start with adding and editing C++ classes from within the Unreal Editor. It will delve into one of Unreal's primary strengths, the ability for designers to customize programmer-developed actors and components. It will help you understand the benefits of when and how to use C++ as the scripting tool. With a blend of task-oriented recipes, this book will provide actionable information about scripting games with UE4, and manipulating the game and the development environment using C++. Towards the end of the book, you will be empowered to become a top-notch developer with Unreal Engine 4 using C++ as the scripting language. What you will learn Build function libraries (Blueprints) containing reusable code to reduce upkeep Move low-level functions from Blueprint into C++ to improve performance Abstract away complex implementation details to simplify designer workflows Incorporate existing libraries into your game to add extra functionality such as hardware integration Implement AI tasks and behaviors in Blueprints and C++ Generate data to control the appearance and content of UI elements

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值