UE4-笔记-通用功能实现逻辑/材质例子

记一些自己实现的通用功能的例子.备查

-----------------------------------------

Q.双击模拟(应用于二段跳/双击W加速跑等):

推荐用C++实现的,BP不好维护 搜索定位=_,=

BP:

宏实现:

UE4-笔记-通用功能实现逻辑/材质例子

C++实现:

---------- 割割割 -----------

.h文件:

UENUM(BlueprintType)
enum class EM_ClickType : uint8
{
    EM_FisrtClick    UMETA(DisplayName = "FisrtClick"),
    EM_DoubleClick    UMETA(DisplayName = "DoubleClick")
};

UCLASS()
class UBPLibrary_CommonDemonstrate : public UBlueprintFunctionLibrary
{
    GENERATED_BODY()
public:
    UFUNCTION(BlueprintCallable)
        static EM_ClickType DoubleClick();
};

cpp文件:

EM_ClickType UCppBPLibrary_CommonDemonstrate::DoubleClick()
{
    static bool bReadyOnce = false;
    if (bReadyOnce)
    {
        bReadyOnce = false;
        return  EM_ClickType::EM_DoubleClick;// double click
    }
    else
    {
        bReadyOnce = true;
        TFuture<void> future = Async<void>(EAsyncExecution::TaskGraph, [=]
        {
            FPlatformProcess::Sleep(0.25);
            if (bReadyOnce)
            {
                bReadyOnce = false;
                return;
            }
        });

        return  EM_ClickType::EM_FisrtClick; // first click
    }
}

使用:

UE4-笔记-通用功能实现逻辑/材质例子

Q.UMG追踪Actor(3D方位转2D UMG坐标):

用于释放指向性道具等需要Actor和UMG联动的操作.

类似泡泡卡丁车的释放导弹追踪功能:

主要函数 BP:

  UE4-笔记-通用功能实现逻辑/材质例子

Q.TA向-半透明材质剔除模型重复渲染区域+边缘高亮:

  记一下材质球和实现步骤,备复用

  目标mesh Component 需启用 RenderCustomDepthPass

  文档:https://docs.unrealengine.com/en-US/Engine/Rendering/PostProcessEffects/PostProcessMaterials/index.html

  移动端开启文档:https://docs.unrealengine.com/en-US/Platforms/Mobile/PostProcessEffects/index.html

UE4-笔记-通用功能实现逻辑/材质例子

Q.TA向-物化/像素化特效:

  来源:https://www.artstation.com/artwork/rRaNKO

UE4-笔记-通用功能实现逻辑/材质例子

 UE4-笔记-通用功能实现逻辑/材质例子

 UE4-笔记-通用功能实现逻辑/材质例子

Q.TA向-后期盒之边缘高亮实现:

  来着Youtube: https://www.youtube.com/watch?v=rL7VUeZzRyQ

  wait

Q.TA向-根据距离计算材质透明度:

UE4-笔记-通用功能实现逻辑/材质例子

Q.UE4-防抖动:

UE4-笔记-通用功能实现逻辑/材质例子