Files
2025-05-18 13:04:45 +08:00

46 lines
1.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreTypes.h"
#include "DatasmithUtils.h"
/**
* Never: it won't force the creation of a UV channel for lightmap, if one already exists it will be exported
* IfNotPresent: if a channel already exists it will be used, if not a new automatic UV projection will be created
* Always: it will create the UV channel overwritting existing data
*/
enum class EDSExportLightmapUV
{
Never,
IfNotPresent,
Always
};
/**
* OriginalFolder: keeps the textures (and its resized copies if needed) in the original folder
* ExportFolder: copy the textures to the export path
*/
enum class EDSResizedTexturesPath
{
OriginalFolder,
ExportFolder
};
class DATASMITHEXPORTER_API FDatasmithExportOptions
{
public:
/** Creation of automatic flatten projection of UVs to be used on lightmaps */
static EDSExportLightmapUV LightmapUV;
/** Policy to create GPU friendly texture sizes */
static EDSResizeTextureMode ResizeTexturesMode;
/** it sets where the resized textures will be stored */
static EDSResizedTexturesPath PathTexturesMode;
/** Maximum texture size allowed, this will be used in conjuction with ResizeTexturesMode */
static int32 MaxTextureSize;
static const int32 MaxUnrealSupportedTextureSize;
/** Gamma of colors, usually 2.2 for Linear Workflow or 1.0 for classic workflow */
static float ColorGamma;
};