2020-01-24 23:36:12 -05:00
|
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
2020-01-24 18:07:01 -05:00
|
|
|
|
|
|
|
|
#include "CopyTextureShaders.h"
|
|
|
|
|
|
2020-02-06 13:13:41 -05:00
|
|
|
IMPLEMENT_TYPE_LAYOUT(FCopyTextureCS);
|
|
|
|
|
|
2020-01-24 18:07:01 -05:00
|
|
|
#define IMPLEMENT_COPY_RESOURCE_SHADER(SrcType,DstType,ValueType)\
|
|
|
|
|
typedef TCopyResourceCS<ECopyTextureResourceType::SrcType, ECopyTextureResourceType::DstType, ECopyTextureValueType::ValueType, 4> FCopyTextureCS_##SrcType##_##DstType##_##ValueType##4;\
|
2020-11-24 18:42:39 -04:00
|
|
|
IMPLEMENT_SHADER_TYPE4_WITH_TEMPLATE_PREFIX(template<>, RENDERCORE_API, FCopyTextureCS_##SrcType##_##DstType##_##ValueType##4, SF_Compute);
|
2020-01-24 18:07:01 -05:00
|
|
|
|
|
|
|
|
#define IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(SrcType,DstType)\
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER(SrcType,DstType,Float)\
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER(SrcType,DstType,Int32)\
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER(SrcType,DstType,Uint32)
|
|
|
|
|
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture2D , Texture2D );
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture2D , Texture2DArray);
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture2D , Texture3D );
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture2DArray, Texture2D );
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture2DArray, Texture2DArray);
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture2DArray, Texture3D );
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture3D , Texture2D );
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture3D , Texture2DArray);
|
|
|
|
|
IMPLEMENT_COPY_RESOURCE_SHADER_ALL_TYPES(Texture3D , Texture3D );
|