VJ Master 1.0
Real-time audio analysis and visualisation.
Loading...
Searching...
No Matches
AST_VisComputeBase Class Reference

Base class for visualisation actors that implement compute shader management and RPC interface. This class provides functionality for managing and executing compute shaders on both the game and render threads. More...

#include <ST_VisComputeBase.h>

Public Member Functions

 AST_VisComputeBase ()
virtual void Tick (float DeltaTime) override
Public Member Functions inherited from AST_VisBase
 AST_VisBase ()
virtual void HandleBeginPlay ()
virtual void EndPlay (const EEndPlayReason::Type EndPlayReason) override
virtual bool RegisterToIO (EAudioIOType NewAudioIOType)
bool RegisterToIO (int32 NewAudioIOType)
virtual void DeregisterFromIO (EAudioIOType CurrAudioIOType)
void DeregisterFromIO (int32 CurrAudioIOType)
virtual bool SetConstantParameters ()
virtual bool SetDynamicParameters ()
Public Member Functions inherited from IST_AudioProcessingInterface
void OnAudioIOStatusChanged (bool bIsActive, FIntPoint IOId)
 Event triggered when the status of an audio I/O device changes.
void OnRawMagnitudesReady (const TArray< float > &RawMagnitudes, FIntPoint IOId)
 Event triggered when raw magnitude data is ready for an audio I/O device.
void OnFrequencyBandsReady (const TArray< float > &FrequencyBands, int32 NumFrequencyBands, FIntPoint IOId)
 Event triggered when frequency band data is ready for an audio I/O device.
void OnAmplitudesReady (const TArray< float > &Amplitudes, FIntPoint IOId)
 Event triggered when amplitude data is ready for an audio I/O device.
void OnPitchesReady (const TArray< float > &Pitches, FIntPoint IOId)
 Event triggered when pitch data is ready for an audio I/O device.
void OnBeatDetected (const TArray< float > &Beats, const TArray< bool > &BeatDetectedForChannel, FIntPoint IOId)
 Event triggered when a beat is detected in the audio data for an I/O device.

Static Public Member Functions

static bool IsPlaying (const UObject *WorldContextObject)

Protected Member Functions

virtual void BeginPlay () override
virtual void BeginDestroy () override
virtual void InitComputeShader_GameThread () override
virtual void InitComputeShader_RenderThread (FRHICommandListImmediate &RHICmdList) override
virtual void ExecuteComputeShader_GameThread (float DeltaTime) override
virtual void ExecuteComputeShader_RenderThread (FRHICommandListImmediate &RHICmdList) override
virtual void DisposeComputeShader_GameThread () override
virtual void DisposeComputeShader_RenderThread (FRHICommandListImmediate &RHICmdList) override
virtual FString GetOwnerName () const
Protected Member Functions inherited from AST_VisBase
virtual void PostInitializeComponents () override

Protected Attributes

bool bDebugSprite = true
bool bDebugBounds = true
bool bDebugDisplayInRuntime = false
FST_VJ_BoundsConstantParameters BoundsConstantParameters
float LastDeltaTime = 0.0f
UST_VJ_RPCSManagercachedRPCSManager = nullptr
Protected Attributes inherited from AST_VisBase
USceneComponent * Root = nullptr
bool bCustomBeginPlay = false
bool bSamplerActivates = false
bool bZeroSamplersDeactivates = false
int32 Default_AudioIOs = 0
int32 Registered_AudioIOs = 0

Detailed Description

Base class for visualisation actors that implement compute shader management and RPC interface. This class provides functionality for managing and executing compute shaders on both the game and render threads.

Constructor & Destructor Documentation

◆ AST_VisComputeBase()

AST_VisComputeBase::AST_VisComputeBase ( )

Default constructor for AST_VisComputeBase.

Member Function Documentation

◆ BeginDestroy()

void AST_VisComputeBase::BeginDestroy ( )
overrideprotectedvirtual

Called when the actor is destroyed.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ BeginPlay()

void AST_VisComputeBase::BeginPlay ( )
overrideprotectedvirtual

Called when the game starts or when the actor is spawned.

Reimplemented from AST_VisBase.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ DisposeComputeShader_GameThread()

void AST_VisComputeBase::DisposeComputeShader_GameThread ( )
overrideprotectedvirtual

Disposes of the compute shader on the game thread.

Reimplemented from IST_VJ_ManagedRPCSInterface.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ DisposeComputeShader_RenderThread()

void AST_VisComputeBase::DisposeComputeShader_RenderThread ( FRHICommandListImmediate & RHICmdList)
overrideprotectedvirtual

Disposes of the compute shader on the render thread.

Reimplemented from IST_VJ_ManagedRPCSInterface.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ ExecuteComputeShader_GameThread()

void AST_VisComputeBase::ExecuteComputeShader_GameThread ( float DeltaTime)
overrideprotectedvirtual

Executes the compute shader on the game thread.

Reimplemented from IST_VJ_ManagedRPCSInterface.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ ExecuteComputeShader_RenderThread()

void AST_VisComputeBase::ExecuteComputeShader_RenderThread ( FRHICommandListImmediate & RHICmdList)
overrideprotectedvirtual

Executes the compute shader on the render thread.

Reimplemented from IST_VJ_ManagedRPCSInterface.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ GetOwnerName()

FString AST_VisComputeBase::GetOwnerName ( ) const
inlineprotectedvirtual

Retrieves the name of the actor's owner.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ InitComputeShader_GameThread()

void AST_VisComputeBase::InitComputeShader_GameThread ( )
overrideprotectedvirtual

Initializes the compute shader on the game thread.

Reimplemented from IST_VJ_ManagedRPCSInterface.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ InitComputeShader_RenderThread()

void AST_VisComputeBase::InitComputeShader_RenderThread ( FRHICommandListImmediate & RHICmdList)
overrideprotectedvirtual

Initializes the compute shader on the render thread.

Reimplemented from IST_VJ_ManagedRPCSInterface.

Reimplemented in AST_C_VisAudioReactiveBoids.

◆ IsPlaying()

bool AST_VisComputeBase::IsPlaying ( const UObject * WorldContextObject)
static

Checks if the visualisation is playing in the provided world context.

◆ Tick()

void AST_VisComputeBase::Tick ( float DeltaTime)
overridevirtual

Called every frame to update the actor.

Reimplemented from AST_VisBase.

Member Data Documentation

◆ bDebugBounds

bool AST_VisComputeBase::bDebugBounds = true
protected

Flag to enable or disable debug bounds visualization.

◆ bDebugDisplayInRuntime

bool AST_VisComputeBase::bDebugDisplayInRuntime = false
protected

Flag to enable or disable the debug display in runtime.

◆ bDebugSprite

bool AST_VisComputeBase::bDebugSprite = true
protected

Flag to enable or disable debug sprite visualization.

◆ BoundsConstantParameters

FST_VJ_BoundsConstantParameters AST_VisComputeBase::BoundsConstantParameters
protected

Constant parameters for bounds visualization.

◆ cachedRPCSManager

UST_VJ_RPCSManager* AST_VisComputeBase::cachedRPCSManager = nullptr
protected

Cached reference to the RPC manager.

◆ LastDeltaTime

float AST_VisComputeBase::LastDeltaTime = 0.0f
protected

Last delta time value.


The documentation for this class was generated from the following files:
  • H:/Games/Unreal/Aaron/FunWithShaders/Plugins/ST_VJMaster/Source/ST_AudioVisualisation/Public/Main/Base/ST_VisComputeBase.h
  • H:/Games/Unreal/Aaron/FunWithShaders/Plugins/ST_VJMaster/Source/ST_AudioVisualisation/Private/Main/Base/ST_VisComputeBase.cpp