美文网首页
虚幻4初级 使用纯蓝图制作一个简易的仿吃鸡血条效果(蓝图宏)

虚幻4初级 使用纯蓝图制作一个简易的仿吃鸡血条效果(蓝图宏)

作者: 92c5d7b45a71 | 来源:发表于2018-07-30 15:07 被阅读0次

    Demo下载

    实现效果

    分析

    • 整个条使用百分比来表示,最大值为1.0,最小值为0。
    • 使用插值做平滑效果,所以要用Tick(Widget中不能使用TimeLine)
    • 在血量减少的时候使用插值减少实际血量的比值,并同时增加延迟的比值,这样可以保证实际血量的值+延迟的值是保持不变的。
    • 在一定延时后,使用插值处理延迟值的减少,并同时空的值增加,原因同上
    • 判断血量是减少还是增加,如果是减少则使用上述方法,如果是增加的话则延迟的值始终为零,使用插值增加实际血量,同时减少空的值,保证三个比值的总值永远为1.0

    蓝图

    实际上,我们有现成的控件,百分比值的控制可以使用【HorizontalBox】Slot中SIze的值(模式为填充)


    Slot

    如果每次使用都需要Cast的话有点麻烦,我们将其封装成蓝图宏:


    SetSlotValue
    GetSlotValue

    还有一个稍微复杂的宏,我会着重讲解:


    将上面血条的三段拆分出来

    这个需要实现的宏的主要作用是:保持线段总长不变(ac恒定ab+bc=ac),其中一个线段减少,另一个线段相应增加(ac-(ab-n)=bc+n)。


    SetSlotValue_2
    将SetSlotValue_2插值化(SetSlotValue2ByInterp) WidgetIsEnpty

    UI

    层次结构,那三个子控件都是Border
    测试效果
    UpdateRealAndLag
    UpdateLagAndEnpty
    Tick
    更新值的接口

    相关文章

      网友评论

          本文标题:虚幻4初级 使用纯蓝图制作一个简易的仿吃鸡血条效果(蓝图宏)

          本文链接:https://www.haomeiwen.com/subject/vsltvftx.html