IVSmoke 1.0
Loading...
Searching...
No Matches
IVSmokePostProcessPass.cpp
1// Copyright (c) 2026, Team SDB. All rights reserved.
2
3#include "IVSmokePostProcessPass.h"
4#include "RenderGraphUtils.h"
5
7 FRDGBuilder& GraphBuilder,
8 FRDGTextureRef SourceTexture,
9 const TCHAR* DebugName,
10 EPixelFormat OverrideFormat,
11 FIntPoint OverrideExtent,
12 ETextureCreateFlags Flags)
13{
15 OutputDesc.Flags |= Flags;
16
17 // Override format if specified (e.g., PF_FloatRGBA for alpha support)
19 {
21 }
22
23 // Override extent if specified (for viewport-sized textures)
24 if (OverrideExtent != FIntPoint::ZeroValue)
25 {
27 }
28
29
31
32 return OutputTexture;
33}
static void AddComputeShaderPass(FRDGBuilder &GraphBuilder, FGlobalShaderMap *ShaderMap, TShaderMapRef< TShaderClass > ComputeShader, typename TShaderClass::FParameters *Parameters, const FIntVector &TotalThreadSize)
static FRDGTextureRef CreateOutputTexture(FRDGBuilder &GraphBuilder, FRDGTextureRef SourceTexture, const TCHAR *DebugName=, EPixelFormat OverrideFormat=PF_Unknown, FIntPoint OverrideExtent=FIntPoint::ZeroValue, ETextureCreateFlags Flags=ETextureCreateFlags::UAV)