VJ Master 1.0
Real-time audio analysis and visualisation.
Loading...
Searching...
No Matches
ST_AudioControlMatLEDBase.h
1// Copyright (c) 2025 Aaron Trotter (ShaderTech). All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Control/Base/ST_AudioControlBase.h"
7#include "Main/Base/ST_AudioControlManagerBase.h"
8#include "Materials/MaterialInterface.h"
9#include "Engine/TextureRenderTarget2D.h"
10#include "ST_AudioControlMatLEDBase.generated.h"
11
15UCLASS(Abstract)
16class ST_AUDIOVISUALISATION_API AST_AudioControlMatLEDBase : public AST_AudioControlBase
17{
18 GENERATED_BODY()
19
20public:
23
28 UFUNCTION(BlueprintCallable, Category = "ShaderTech|AudioControl|Vis")
29 void SetMaterial(UMaterialInterface* NewMat);
30
31protected:
33 virtual void BeginPlay() override;
34
36 virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override;
37
39 virtual void Tick(float DeltaTime) override;
40
46 bool SetResolution(FIntPoint PrevisResolution);
47
54 bool SetupBuffers(FLEDConfig LEDConfig, FIntPoint LEDResolution);
55
56protected:
58 UPROPERTY(Transient, VisibleAnywhere, BlueprintReadOnly, Category = "ShaderTech|MatLED")
59 UTextureRenderTarget2D* RenderTarget = nullptr;
60
62 UPROPERTY(Transient)
63 TArray<FColor> PrevisLEDColours;
64
66 UPROPERTY(Transient)
67 TArray<FColor> MappedLEDColours;
68
70 UPROPERTY(Transient)
71 TArray<uint8> LEDColourByteArray;
72
74 UPROPERTY(Transient)
75 bool bRegistered = false;
76
77private:
79 UPROPERTY(Transient)
80 UMaterialInterface* Mat = nullptr;
81
86 void SetRenderTarget(UTextureRenderTarget2D* _Target);
87};
AST_AudioControlBase()
Definition ST_AudioControlBase.cpp:6
virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override
Definition ST_AudioControlMatLEDBase.cpp:19
virtual void Tick(float DeltaTime) override
Definition ST_AudioControlMatLEDBase.cpp:27
TArray< FColor > PrevisLEDColours
Definition ST_AudioControlMatLEDBase.h:63
bool SetupBuffers(FLEDConfig LEDConfig, FIntPoint LEDResolution)
Definition ST_AudioControlMatLEDBase.cpp:65
UTextureRenderTarget2D * RenderTarget
Definition ST_AudioControlMatLEDBase.h:59
bool bRegistered
Definition ST_AudioControlMatLEDBase.h:75
bool SetResolution(FIntPoint PrevisResolution)
Definition ST_AudioControlMatLEDBase.cpp:37
virtual void BeginPlay() override
Definition ST_AudioControlMatLEDBase.cpp:14
AST_AudioControlMatLEDBase()
Definition ST_AudioControlMatLEDBase.cpp:10
TArray< FColor > MappedLEDColours
Definition ST_AudioControlMatLEDBase.h:67
TArray< uint8 > LEDColourByteArray
Definition ST_AudioControlMatLEDBase.h:71
void SetMaterial(UMaterialInterface *NewMat)
Definition ST_AudioControlMatLEDBase.cpp:104
LED configuration for color formats and alpha mapping.
Definition ST_AudioControlSettings.h:139