DRG-Femboy-Voice/Source/FSD/Public/FadeVisibilitySubSystem.h
2025-04-15 12:39:31 -07:00

48 lines
1.8 KiB
C++
Executable file

#pragma once
#include "CoreMinimal.h"
#include "UObject/NoExportTypes.h"
#include "Curves/CurveFloat.h"
#include "Subsystems/WorldSubsystem.h"
#include "FadeVisibilitySubSystem.generated.h"
class ULightComponent;
class UMeshComponent;
class UPrimitiveComponent;
UCLASS(Blueprintable)
class UFadeVisibilitySubSystem : public UWorldSubsystem {
GENERATED_BODY()
public:
UFadeVisibilitySubSystem();
UFUNCTION(BlueprintCallable)
static void ScalePrimitive(UPrimitiveComponent*& Component, FVector StartScale, FVector EndScale, float Duration);
UFUNCTION(BlueprintCallable)
static void ScaleOutPrimitive(UPrimitiveComponent*& Component, float Duration);
UFUNCTION(BlueprintCallable)
static void ScaleInPrimitive(UPrimitiveComponent*& Component, float Duration);
UFUNCTION(BlueprintCallable)
static void FadeOutMaterialByName(UMeshComponent*& Component, FName Name, FName ParameterName, float Duration);
UFUNCTION(BlueprintCallable)
static void FadeOutMaterialByIndex(UMeshComponent*& Component, int32 MaterialIndex, FName ParameterName, float Duration);
UFUNCTION(BlueprintCallable)
static void FadeOutLight(ULightComponent*& Light, float Duration);
UFUNCTION(BlueprintCallable)
static void FadeLightByCurve(ULightComponent*& Light, UPARAM(Ref) FRuntimeFloatCurve& Curve);
UFUNCTION(BlueprintCallable)
static void FadeInMaterialByName(UMeshComponent*& Component, FName Name, FName ParameterName, float Duration);
UFUNCTION(BlueprintCallable)
static void FadeInMaterialByIndex(UMeshComponent*& Component, int32 MaterialIndex, FName ParameterName, float Duration);
UFUNCTION(BlueprintCallable)
static void FadeInLight(ULightComponent*& Light, float Duration);
};