Unreal中利用控件蓝图系统控制模型的材质切换

这篇具有很好参考价值的文章主要介绍了Unreal中利用控件蓝图系统控制模型的材质切换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

如果想要将某个模型做成可以切换材质的网格体

首先将此网格体做成Actor蓝图,这里我将模型名字命名为Mod_teapoyUnreal中利用控件蓝图系统控制模型的材质切换

右击创建一个蓝图

Unreal中利用控件蓝图系统控制模型的材质切换

将此模型 Mod_teapoy 直接拖放到到蓝图中,我们这里命名为 “BP_茶几” 这里模型拥有多维材质(两个材质是一样的)。不影响后面的材质替换。

Unreal中利用控件蓝图系统控制模型的材质切换

创建三个变量,将变量类型设置为 “Material Instance”并将三个变量的材质选择为需要替换后的材质,一般会将第一个“材质1”设置成默认材质。

Unreal中利用控件蓝图系统控制模型的材质切换

在事件列表中创建三个“自定义事件”(CustomEvent)分别命名为 “切换材质1”  “切换材质2”  “切换材质3”。

Unreal中利用控件蓝图系统控制模型的材质切换

然后右击添加切换材质节点(Set Material),这里的输入节点的Target表示的是需要切换材质的模型,就是将第三步的 Mod_teapoy 拖进事件图表中

Element Index 表示的是多维材质的序号 (参考第二张图) Elenment 0 表示的第一个元素  Elenment 1 表示的是第二个元素,以此类推   所以需要创建两个Set Material,一个元素1,一个元素2

输入节点的Material代表需要替换成的材质,这里我们需要将第四步创建的“Material Instance”类型的变量拖到图标中并与之连接

 这里每个自定义事件(CustomEvent)需要添加两个切换材质节点(Set Material) 原因是因为第一步中说明的茶几是多维材质,拥有两个相同材质的元素。

Unreal中利用控件蓝图系统控制模型的材质切换

最后拿"事件切换材质1”举例,最终连接方式如下: 

Unreal中利用控件蓝图系统控制模型的材质切换

 

“事件切换材质2”“事件切换材质3”也像上面的方式连接 如下:

Unreal中利用控件蓝图系统控制模型的材质切换

以上事件创建完毕,接下来我们做UI控制这些事件的运行

首先右击创建 User Interface中的Widge Blueprint(用户界面的控件蓝图)

命名为 UMG_茶几

打开

然后在控制版中找到“按钮”(Button)的控件,我们需要添加四个  其中包括一个文字提示标语和三个切换材质的缩略图

Unreal中利用控件蓝图系统控制模型的材质切换

 材质缩略图可以经过Ps处理 也可以在Uneal中截图生成 一定要对应好对应的材质。

接下来需要添加这四个按钮的点击事件(On Clicked) 如下:

Unreal中利用控件蓝图系统控制模型的材质切换

Unreal中利用控件蓝图系统控制模型的材质切换

我们需要用到“BP_茶几”里用到的变量,但是不可以直接使用,需要用到事件预构造节点(EVent Pre Construct) 使用方法如下

其中 Get Actor Of Class(获取类的Actor)的输入节点添加成需要获取变量的Actor名称,并右击 Return Value使节点提升为变量

Unreal中利用控件蓝图系统控制模型的材质切换

  将提升后的变量拖入图表中 拉出引脚 搜索刚刚蓝图”BP_茶几”中的的自定义事件 切换材质1~3  并与对应按钮 Button 的点击事件相连 如下:

Unreal中利用控件蓝图系统控制模型的材质切换

 需要将文字的点击事件设置成UI的隐藏,就是说当点击文字时 这个UI会关闭

需要用到设置可视性的节点 Set Visibility  将输入节点的In Visility设置成Collapsed 隐藏起来

Unreal中利用控件蓝图系统控制模型的材质切换

当然,设置好了隐藏是不够的 我们还需要将他调用出来,这里有很多方法将UI掉涌出来,这里我们利用最简单的点击事件调出UI

我们需要在BP_茶几的Actor蓝图中写下来: 

这里的1 是Mod_teapoy的点击事件 原理和UI按钮的点击事件相同 

2的 Create Widge  是将空间蓝图创建出来的意思,输入节点的 Class 代表需要创建的控件名称 UMG_茶几

3的 Add to Viewport 是将控件蓝图创建到视口(屏幕)中的意思 

4的 Set Visbility 是设置这个UI的可视性 这样就会和刚刚控件蓝图中 点击文字事件 触发的设置UI可视性为隐藏刚好相反。

连起来逻辑就是  当点击这个蓝图时 会创建UMG_茶几这个UI到视口中 它是可见的 但如果想要将他取消 就需要点击文字 来触发控件蓝图中的隐藏UI效果

 Unreal中利用控件蓝图系统控制模型的材质切换

Unreal中利用控件蓝图系统控制模型的材质切换

最后其实也可以添加几个布尔值和触发盒子来做下if判断,当到达茶几范围内一定距离后才可点击触发效果,离开某个范围后 将自动关闭切换材质的UI。文章来源地址https://www.toymoban.com/news/detail-400476.html

到了这里,关于Unreal中利用控件蓝图系统控制模型的材质切换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【蓝图】p40-p43对象引用、变量有效性、实现键盘控制物体自转、简单点名系统

    当在一个节点上需要连的线太多,或者需要连接到另一个图标中时,可以创建一个变量,把引脚传到变量里面,则此变量代替了节点的蓝图 操作方法1:新建一个变量,在变量类型里选择想要代替的蓝图 操作方法2:拉出蓝图引脚,选择提升为变量 注意:操作方法12创建出的变

    2024年02月15日
    浏览(36)
  • Unreal5 实现武器切换功能

    ·首先回忆一下之前在制作武器时,如何实现从后背拿武器的。我们创建了一个切换事件,判断当前是否持有武器,然后根据是否持有武器,去修改动画蓝图的变量,来触发从后面拿枪或者是否把枪放了回去。 然后在播放切枪动画时,手伸到背后时,会触发一个动画通知,在

    2024年02月08日
    浏览(42)
  • 【UE4】在控件蓝图上播放视频

    UE版本:4.26 在上一篇文章中(【UE】场景内播放视频、音频)介绍了如何在场景中播放视频,本篇文章将介绍如何在UI上播放视频 1. 首先在“Content”文件夹中新建一个名为“Movies”的文件夹 2. 在文件夹中随便添加一个.mp4格式的视频 3. 新建一个“文件媒体源”    这里命名为

    2024年02月02日
    浏览(49)
  • 关于 ue unreal 虚幻 在编辑器editor未运行情况下 部分材质出现模糊 看不清的问题 的另外一种解决方案猜想

    这里引用两个帖子 Quixel导入资产到UE5后,材质贴图一片模糊的问题该如何解决? - 知乎 干货分享 || UE4场景内模型模糊的解决办法 - 知乎 以上两种是纹理流 texture streaming 导致的问题 结果借个图  眼看这糊的这种问题 下面说一下另外一种情况猜想 情况是这样 因为最近有看看

    2024年02月07日
    浏览(54)
  • UE4 使用控件蓝图的动画功能实现UI的淡入淡出

    效果: 步骤: 首先PS一张背景纯黑,边缘有羽化效果的图片: 新建一个控件蓝图,创建一个图像和按钮控件,控件的初始位置如下所示,设置图像一开始为完全透明 新建两个动画,分别命名为“向左移动”和“向右移动” 在时间轴上添加对按钮和图像的控制 按钮主要是对

    2024年02月17日
    浏览(48)
  • Unity通过代码切换材质

    「你提需求,我来做」征集活动开始啦!我们正在寻找那些有想法、有创意的小伙伴,为我们带来新的挑战和灵感。 无论是一个小小的功能调整,还是一个全新的创意想法,我们都欢迎你向我们留言并提出你的需求。我们会认真考虑每一个想法,并在可能的情况下尽快实现它

    2024年02月13日
    浏览(47)
  • Unreal 5 实现场景环境控制组件

    我在场景中发现了一个环境控制器,这个场景实现了雨天天气和晴天风沙天气,接下来我分析一下这个天气控制器是如何实现。 实现流程: 将环境控制器拖入场景,在配置项上面设置相应的雾,主光源,天空光。 在环境控制器中去设置场景上面的相关配置。 在环境控制器中

    2024年02月10日
    浏览(50)
  • Unreal 断线重连、AI控制

    浅析UE5 DS的断线重连机制 wizardcell.com ReloginProject 当服务器判断某个玩家掉线的时候,会删除对应的PlayerController 在GameMode的Logout重载内,会复制一份当前PC的PS,在之后重新登录的时候恢复PS: 在服务器检测到新加入一个Player时,会创建一个新的PlayerController: 还原之前保存的

    2024年02月06日
    浏览(60)
  • 【UE5 Cesium】11-Cesium for Unreal 切换Dynamic Pawn为其它Pawn

            我们知道在Cesium for Unreal中默认使用的是DynamicPawn来浏览地图场景。DynamicPawn适用全球浏览,可以按自定义曲线进行飞行。但是DynamicPawn是使用的是地理参考坐标系,并不是标准的UE坐标系,当我们全球浏览结束后,可能需要在某一个地方进行浏览,可能就需要涉及

    2024年02月12日
    浏览(44)
  • 【UE5】蓝图UI控件菜单锚(Menu Anchor)的使用与浮动详情窗口的制作

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 最近在做毕设,一直在苦恼要怎么精准地把浮动的详情窗口放在图标的一边,就比如下图中的效果 本来也有想过直接获取控件在屏幕上的位置来计算浮动窗口的生成位置,但神奇的是蓝图似乎没有这个

    2024年02月11日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包