#ifndef MACROS_H
#define MACROS_H
#define COMMON using namespace Common; namespace Common
#ifdef VS_SHADER
#define VS using namespace VertexShader; namespace VertexShader
#else
#define VS namespace VertexShader_DO_NOT_USE
#endif
#ifdef PS_SHADER
#define PS using namespace PixelShader; namespace PixelShader
#else
#define PS namespace PixelShader_DO_NOT_USE
#endif
#ifdef RAY_SHADER
#define RAY using namespace RayShader; namespace RayShader
#else
#define RAY namespace RayShader_DO_NOT_USE
#endif
#ifdef CALLABLE_SHADER
#define CALLABLE using namespace CallableShader; namespace CallableShader
#else
#define CALLABLE namespace CallableShader_DO_NOT_USE
#endif
float4 Test()
{
return float4(1,0.5,1,1);
}
#ifndef USE_CALLABLE_SHADERS
#define USE_CALLABLE_SHADERS
#endif
struct RunShaderResult_t
{
A val;
};
[noinline]
[builtin]
RunShaderResult_t RunShader( uint32_t id, B data ) where optional B
{
return {};
}
#endif