文章目录
一、创建材质函数
- 将之前实现的控制"自发光颜色 "的部分蓝图复制粘贴到新建的材质函数蓝图中,连上"
OutputResult
"左边的引脚。 - 记得勾选材质函数的"公开到库"选项,这样才能在其他材质中使用。
- 还可以为材质函数添加输入 。在
TimeToHit
节点后新增一个FunctionInput
节点,勾选其"将预览值用作默认值"。这样在其它场景调用这个函数时,就可以根据不同的场景选择输入,但本身有默认值。
二、UI材质
-
创建一个材质并应用掉之前实现的血量条UI 上。首先,创建一个新材质
M_HealthBar
,将材质的材质域从默认的"表面 "切换为"用户界面" -
蓝图细节如下:(1)
LinearGradient
是线性渐变 函数,UV Channel (V2) UGradient
和VGradient
:负责定义UV坐标的变化,通常用于控制纹理的映射方式 。在这里,它们用于确定渐变的方向 和范围 (渐变是水平还是垂直,以及渐变的起始和结束位置。)。(2)
ProgressAlpha (Param)
是一个参数节点 ,通常用于通过外部输入动态调整 材质属性。ProgressAlpha
用来表示进度条的当前进度,从而控制显示的部分。默认下ProgressAlpha
值为1
,表示满血状态。(3)
If
表示超过百分比的部分显示白色,不超过的部分显示红色。 -
进入血条控件
PlayerHealth_Widget
,删除之前的ProgressBar
,然后使用一个Image
替代,这个Image
的"外观 " -> "图像 "就设置为刚创建的材质M_HealthBar
。