Files
UnrealEngine/Engine/Source/Runtime/Renderer/Internal/MaterialCache/MaterialCacheABuffer.h
2025-05-18 13:04:45 +08:00

35 lines
732 B
C

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "PixelFormat.h"
#include "Containers/Array.h"
#include "Misc/EnumClassFlags.h"
static constexpr uint32 MaterialCacheMaxABuffers = 3u;
enum class EMaterialCacheAttribute : uint8
{
BaseColor,
WorldNormal,
Normal,
Roughness,
Specular,
Metallic,
Opacity,
WorldPosition
};
enum class EMaterialCacheAttributeMask
{
// TODO: Conditional targets
};
ENUM_CLASS_FLAGS(EMaterialCacheAttributeMask);
static void GetMaterialCacheABufferFormats(EMaterialCacheAttributeMask Mask, TArray<EPixelFormat, TInlineAllocator<MaterialCacheMaxABuffers>>& OutFormats) {
OutFormats.Add(PF_R8G8B8A8);
OutFormats.Add(PF_A2B10G10R10);
OutFormats.Add(PF_R8G8B8A8);
}