UE4如何将动作限制为特定类别?

2021-03-31
5127
0

哈喽各位小伙伴,我们在UE4中将动作限制为特定类别就需要执行脚本操作,下面为大家了解在UE4中将动作限制为特定类别的案例步骤。

将动作限制为特定类别

例如,你创建了一个脚本动作来更改选定角色上的材质。但你希望仅在用户右键单击“静态网格物体”时才显示该动作,而在用户右键单击“Light Actor”或“蓝图”时不显示该动作。

该AssetActionUtility和ActorAssetUtility基类都提供一个内置命名的功能GetSupportedClass。该函数确定需要选择的对象的类别,以使你的Blueprint类中的“脚本操作”出现在上下文菜单中。每次用户右键单击一组Assets或Actor时,都会调用此函数以获取AssetActionUtility或ActorAssetUtility类支持的类类型。如果返回类类型,则将该返回值与用户当前选择的资产或参与者集进行比较。如果这些资产或参与者中至少有一个具有与GetSupportedClass返回的类相匹配的类,然后脚本操作将出现在上下文菜单中。默认情况下,GetSupportedClass函数不返回任何内容。这样,无论选择的资产或参与者的类别如何,所有脚本操作都将显示。

如果要更改此默认行为,则可以在类中重写GetSupportedClass函数以返回特定类型:

游戏建模师分享UE4如何将动作限制为特定类别,你可要码住了哦

 

例如,ActorAssetUtility中的此实现返回StaticMeshActor类:

游戏建模师分享UE4如何将动作限制为特定类别,你可要码住了哦

 

当我们在打开上下文菜单时至少选择了一个静态网格物体Actor时,此类中的脚本操作将显示在上下文菜单中:

游戏建模师分享UE4如何将动作限制为特定类别,你可要码住了哦

 

但是,当用户仅选择了其他类型的Actor时,脚本操作不会出现:

游戏建模师分享UE4如何将动作限制为特定类别,你可要码住了哦

 

如果选择了多个Assets或Actor,则该行为是允许的:只要所选项目中的至少一项与GetSupportedClass返回的类相匹配,“脚本操作”就会显示在上下文菜单中。即使你重写GetSupportedClass来限制操作处理类别,也不能保证在操作运行时仅选择该类的实例。

动态输入

可以将脚本操作设置为要求调用它们的用户提供信息。如果将一个或多个输入添加到函数输入节点或“自定义事件”节点,则每次在编辑器中运行“脚本操作”时,系统都会提示我们提供该输入。每当脚本需要一些额外的信息(每次调用该操作可能有所不同)时,此功能就很有用。

此函数具有三个输入:字符串,Actor对象引用和Material对象引用:

游戏建模师分享UE4如何将动作限制为特定类别,你可要码住了哦

 

当运行此功能的脚本操作时,编辑器会弹出一个小窗口供您设置以下输入值:

游戏建模师分享UE4如何将动作限制为特定类别,你可要码住了哦

 

编辑器将验证每个输入是否与假定的值类型相匹配。但它不能保证输入中将完全有值,或者这些值在任何特定上下文中都有意义。脚本应处理未指定的输入值并验证用户确实提供的输入值。

UE4中脚本操作的知识是需要我们了解的,希望上面UE4中将动作限制为特定类别的方法步骤能够帮到你。

转载声明:本文来源于网络,不作任何商业用途

免责声明:本文内部分内容来自网络,所涉绘画作品及文字版权与著作权归原作者,若有侵权或异议请联系我们处理。
收藏

全部评论

您还没登录

暂无留言,赶紧抢占沙发
王氏教育是国内专业的CG数字艺术设计线上线下学习平台,在王氏教育,有原画、插画、漫画、影视、3D模型等培训课程,也有学习资源下载、行业社区交流。CG数字艺术学习,来王氏教育。
绘学霸iOS端二维码

IOS下载

绘学霸安卓端二维码

安卓下载

绘学霸微信小程序二维码

小程序

版权声明
本网站所有产品设计、功能及展示形式,均已受版权或产权保护,任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
热线电话
18026259035
咨询时间:9:00~21:00
在线客服
联系网站客服
客服微信:18026259035
公司地址
中国·广州
广州市海珠区晓港中马路130号之19
绘学霸客户端(权限暂无,用于CG资源与教程交流分享)
王氏教育 王氏教育