79 lines
3.8 KiB
C++
79 lines
3.8 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
/*=============================================================================
|
|
RHIShaderFormatDefinitions.h: Names for Shader Formats
|
|
(that don't require linking).
|
|
=============================================================================*/
|
|
|
|
#pragma once
|
|
|
|
#include "RHIStaticShaderPlatformNames.h"
|
|
|
|
static FName NAME_PCD3D_SM6(TEXT("PCD3D_SM6"));
|
|
static FName NAME_PCD3D_SM5(TEXT("PCD3D_SM5"));
|
|
static FName NAME_PCD3D_ES3_1(TEXT("PCD3D_ES31"));
|
|
|
|
static FName NAME_GLSL_150_ES31(TEXT("GLSL_150_ES31"));
|
|
static FName NAME_GLSL_ES3_1_ANDROID(TEXT("GLSL_ES3_1_ANDROID"));
|
|
|
|
static FName NAME_SF_METAL_ES3_1_IOS_DEPRECATED(TEXT("SF_METAL"));
|
|
static FName NAME_SF_METAL_SM5_IOS_DEPRECATED(TEXT("SF_METAL_MRT"));
|
|
static FName NAME_SF_METAL_ES3_1_TVOS_DEPRECATED(TEXT("SF_METAL_TVOS"));
|
|
static FName NAME_SF_METAL_SM5_TVOS_DEPRECATED(TEXT("SF_METAL_MRT_TVOS"));
|
|
static FName NAME_SF_METAL_MRT_MAC_DEPRECATED(TEXT("SF_METAL_MRT_MAC"));
|
|
|
|
static FName NAME_SF_METAL_ES3_1_IOS(TEXT("SF_METAL_ES3_1_IOS"));
|
|
static FName NAME_SF_METAL_SM5_IOS(TEXT("SF_METAL_SM5_IOS"));
|
|
static FName NAME_SF_METAL_ES3_1_TVOS(TEXT("SF_METAL_ES3_1_TVOS"));
|
|
static FName NAME_SF_METAL_SM5_TVOS(TEXT("SF_METAL_SM5_TVOS"));
|
|
static FName NAME_SF_METAL_SM5(TEXT("SF_METAL_SM5"));
|
|
static FName NAME_SF_METAL_SM6(TEXT("SF_METAL_SM6"));
|
|
static FName NAME_SF_METAL_SIM(TEXT("SF_METAL_SIM"));
|
|
static FName NAME_SF_METAL_ES3_1(TEXT("SF_METAL_ES3_1"));
|
|
|
|
static FName NAME_VULKAN_ES3_1_ANDROID(TEXT("SF_VULKAN_ES31_ANDROID"));
|
|
static FName NAME_VULKAN_ES3_1(TEXT("SF_VULKAN_ES31"));
|
|
static FName NAME_VULKAN_SM5(TEXT("SF_VULKAN_SM5"));
|
|
static FName NAME_VULKAN_SM6(TEXT("SF_VULKAN_SM6"));
|
|
static FName NAME_VULKAN_SM5_ANDROID(TEXT("SF_VULKAN_SM5_ANDROID"));
|
|
|
|
static EShaderPlatform ShaderFormatNameToShaderPlatform(FName ShaderFormat)
|
|
{
|
|
if (ShaderFormat == NAME_PCD3D_SM6) return SP_PCD3D_SM6;
|
|
if (ShaderFormat == NAME_PCD3D_SM5) return SP_PCD3D_SM5;
|
|
if (ShaderFormat == NAME_PCD3D_ES3_1) return SP_PCD3D_ES3_1;
|
|
|
|
if (ShaderFormat == NAME_GLSL_150_ES31) return SP_OPENGL_PCES3_1;
|
|
if (ShaderFormat == NAME_GLSL_ES3_1_ANDROID) return SP_OPENGL_ES3_1_ANDROID;
|
|
|
|
if (ShaderFormat == NAME_SF_METAL_ES3_1_IOS) return SP_METAL_ES3_1_IOS;
|
|
if (ShaderFormat == NAME_SF_METAL_ES3_1_IOS_DEPRECATED) return SP_METAL_ES3_1_IOS;
|
|
if (ShaderFormat == NAME_SF_METAL_SM5_IOS) return SP_METAL_SM5_IOS;
|
|
if (ShaderFormat == NAME_SF_METAL_SM5_IOS_DEPRECATED) return SP_METAL_SM5_IOS;
|
|
if (ShaderFormat == NAME_SF_METAL_ES3_1_TVOS) return SP_METAL_ES3_1_TVOS;
|
|
if (ShaderFormat == NAME_SF_METAL_ES3_1_TVOS_DEPRECATED) return SP_METAL_ES3_1_TVOS;
|
|
if (ShaderFormat == NAME_SF_METAL_SM5_TVOS) return SP_METAL_SM5_TVOS;
|
|
if (ShaderFormat == NAME_SF_METAL_SM5_TVOS_DEPRECATED) return SP_METAL_SM5_TVOS;
|
|
if (ShaderFormat == NAME_SF_METAL_SM5) return SP_METAL_SM5;
|
|
if (ShaderFormat == NAME_SF_METAL_SM6) return SP_METAL_SM6;
|
|
if (ShaderFormat == NAME_SF_METAL_SIM) return SP_METAL_SIM;
|
|
if (ShaderFormat == NAME_SF_METAL_ES3_1) return SP_METAL_ES3_1;
|
|
if (ShaderFormat == NAME_SF_METAL_MRT_MAC_DEPRECATED) return SP_METAL_ES3_1;
|
|
|
|
if (ShaderFormat == NAME_VULKAN_ES3_1_ANDROID) return SP_VULKAN_ES3_1_ANDROID;
|
|
if (ShaderFormat == NAME_VULKAN_ES3_1) return SP_VULKAN_PCES3_1;
|
|
if (ShaderFormat == NAME_VULKAN_SM5) return SP_VULKAN_SM5;
|
|
if (ShaderFormat == NAME_VULKAN_SM6) return SP_VULKAN_SM6;
|
|
if (ShaderFormat == NAME_VULKAN_SM5_ANDROID) return SP_VULKAN_SM5_ANDROID;
|
|
|
|
for (int32 StaticPlatform = SP_StaticPlatform_First; StaticPlatform <= SP_StaticPlatform_Last; ++StaticPlatform)
|
|
{
|
|
if (ShaderFormat == FStaticShaderPlatformNames::Get().GetShaderFormat(EShaderPlatform(StaticPlatform)))
|
|
{
|
|
return EShaderPlatform(StaticPlatform);
|
|
}
|
|
}
|
|
|
|
return SP_NumPlatforms;
|
|
}
|