VJ Master 1.0
Real-time audio analysis and visualisation.
Loading...
Searching...
No Matches
ST_VJ_ComputeFunctionLibrary.h
1// Copyright (c) 2025 Aaron Trotter (ShaderTech). All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Kismet/BlueprintFunctionLibrary.h"
7#include "RenderGraphUtils.h"
8#include "RenderGraphBuilder.h"
9#include "GlobalShader.h"
10#include "RenderGraphResources.h"
11#include "RenderGraphFwd.h"
12#include "RenderGraphDefinitions.h"
13#include "ST_VJ_ComputeFunctionLibrary.generated.h"
14
21UCLASS()
22class ST_AUDIOVISUALISATION_API UST_VJ_ComputeFunctionLibrary : public UBlueprintFunctionLibrary
23{
24 GENERATED_BODY()
25
26public:
37 static FRDGBufferRef CreateStructuredBuffer(
38 FRDGBuilder& GraphBuilder,
39 const TCHAR* Name,
40 uint32 BytesPerElement,
41 uint32 NumElements,
42 bool bReadOnly = false);
43
54 static void RegisterSRV(
55 FRDGBuilder& GraphBuilder,
56 TRefCountPtr<FRDGPooledBuffer> buffer,
57 FString name,
58 FRDGBufferRef& outRDGRef,
59 FRDGBufferSRVRef& outSRVRef,
60 ERDGBufferFlags flags = ERDGBufferFlags::None);
61
72 static void RegisterUAV(
73 FRDGBuilder& GraphBuilder,
74 TRefCountPtr<FRDGPooledBuffer> buffer,
75 FString name,
76 FRDGBufferRef& outRDGRef,
77 FRDGBufferUAVRef& outUAVRef,
78 ERDGBufferFlags flags = ERDGBufferFlags::None);
79};
Library providing utilities for creating and registering structured buffers.
Definition ST_VJ_ComputeFunctionLibrary.h:23
static FRDGBufferRef CreateStructuredBuffer(FRDGBuilder &GraphBuilder, const TCHAR *Name, uint32 BytesPerElement, uint32 NumElements, bool bReadOnly=false)
Definition ST_VJ_ComputeFunctionLibrary.cpp:5
static void RegisterSRV(FRDGBuilder &GraphBuilder, TRefCountPtr< FRDGPooledBuffer > buffer, FString name, FRDGBufferRef &outRDGRef, FRDGBufferSRVRef &outSRVRef, ERDGBufferFlags flags=ERDGBufferFlags::None)
Definition ST_VJ_ComputeFunctionLibrary.cpp:23
static void RegisterUAV(FRDGBuilder &GraphBuilder, TRefCountPtr< FRDGPooledBuffer > buffer, FString name, FRDGBufferRef &outRDGRef, FRDGBufferUAVRef &outUAVRef, ERDGBufferFlags flags=ERDGBufferFlags::None)
Definition ST_VJ_ComputeFunctionLibrary.cpp:35