5#include "CoreMinimal.h"
8#include "DrawDebugHelpers.h"
9#include "Components/BillboardComponent.h"
11#include "Compute/Utils/ST_VJ_RPCSManager.h"
12#include "Compute/Utils/ST_VJ_ManagedRPCSInterface.h"
13#include "RHICommandList.h"
14#include "Data/ST_AudioReactiveBoidsLib.h"
15#include "ST_VisComputeBase.generated.h"
57 virtual void Tick(
float DeltaTime)
override;
60 UFUNCTION(BlueprintPure, Category =
"ShaderTech|AudioVisualisation", meta = (BlueprintThreadSafe, WorldContext =
"WorldContextObject"))
61 static bool IsPlaying(
const UObject* WorldContextObject);
65 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"ShaderTech|Bounds|Debug")
69 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"ShaderTech|Bounds|Debug")
73 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"ShaderTech|Bounds|Debug")
77 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"ShaderTech|Bounds|Constants")
80#if WITH_EDITORONLY_DATA
83 virtual bool ShouldTickIfViewportsOnly()
const override;
86 virtual void SelectedTick();
89 virtual void OnSelected();
92 virtual void OnUnselected();
96 UPROPERTY(BlueprintReadOnly, Category =
"Bounds")
97 UBillboardComponent* Billboard =
nullptr;
100 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"ShaderTech|Bounds|Debug")
101 FColor BoundsColor = FColor::Yellow;
105 FColor CurrentBoundsColor = FColor::Black;
108 bool bPreviouslySelected = false;
AST_VisBase()
Definition ST_VisBase.cpp:8
static bool IsPlaying(const UObject *WorldContextObject)
Definition ST_VisComputeBase.cpp:41
virtual void InitComputeShader_RenderThread(FRHICommandListImmediate &RHICmdList) override
Definition ST_VisComputeBase.cpp:130
virtual void BeginPlay() override
Definition ST_VisComputeBase.cpp:18
virtual void DisposeComputeShader_GameThread() override
Definition ST_VisComputeBase.cpp:140
bool bDebugDisplayInRuntime
Definition ST_VisComputeBase.h:74
float LastDeltaTime
Definition ST_VisComputeBase.h:113
virtual FString GetOwnerName() const
Definition ST_VisComputeBase.h:123
virtual void ExecuteComputeShader_RenderThread(FRHICommandListImmediate &RHICmdList) override
Definition ST_VisComputeBase.cpp:138
AST_VisComputeBase()
Definition ST_VisComputeBase.cpp:7
virtual void BeginDestroy() override
Definition ST_VisComputeBase.cpp:31
UST_VJ_RPCSManager * cachedRPCSManager
Definition ST_VisComputeBase.h:117
virtual void ExecuteComputeShader_GameThread(float DeltaTime) override
Definition ST_VisComputeBase.cpp:132
virtual void InitComputeShader_GameThread() override
Definition ST_VisComputeBase.cpp:129
bool bDebugSprite
Definition ST_VisComputeBase.h:66
virtual void Tick(float DeltaTime) override
Definition ST_VisComputeBase.cpp:55
FST_VJ_BoundsConstantParameters BoundsConstantParameters
Definition ST_VisComputeBase.h:78
virtual void DisposeComputeShader_RenderThread(FRHICommandListImmediate &RHICmdList) override
Definition ST_VisComputeBase.cpp:141
bool bDebugBounds
Definition ST_VisComputeBase.h:70
Interface class for managed RPCs related to compute shader lifecycle handling.
Definition ST_VJ_ManagedRPCSInterface.h:26
Manages runtime compute shader execution for registered objects.
Definition ST_VJ_RPCSManager.h:21
Struct to hold constant parameters for VJ bounds, such as sphere radius or extent of the bounding box...
Definition ST_AudioReactiveBoidsLib.h:16