給角色添加Power變化效果
添加速度值 根據(jù)power變化控制速度
BatteryCollectorCharacter.h
protected:
// APawn interface
virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override;
// End of APawn interface
UFUNCTION(BlueprintCallable, Category = "Pickups")
void CollectPickups();
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Power", meta = (BlueprintProtected = "true"))
float InitialPower;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Power")
float SpeedFactor;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Power")
float BaseSpeed;
UFUNCTION(BlueprintImplementableEvent, Category = "Power")
void PowerChangeEffect(); // BlueprintImplementableEvent 表示該函數(shù)在藍(lán)圖中實(shí)現(xiàn)
BatteryCollectorCharacter。cpp

Paste_Image.png
在UpdatePower中調(diào)整速度 并調(diào)用PowerChangeEffect

Paste_Image.png
修改ThirdPersonCharacter 藍(lán)圖類 該類 繼承自BatteryCollectorCharacter
修改構(gòu)造函數(shù) 獲得材質(zhì)實(shí)例 并保存

Paste_Image.png
在EventGraph中 實(shí)現(xiàn)PowerChangeEffect 函數(shù), 根據(jù)當(dāng)前Power/InitalPower 的值在兩個(gè)顏色之間漸變 動態(tài)修改材質(zhì)的BodyColor顏色(該參數(shù)可通過點(diǎn)擊材質(zhì)查看)

Paste_Image.png
運(yùn)行 人物顏色一點(diǎn)點(diǎn)發(fā)生變化