#include "common.hlsli" #define SMAA_HLSL_3 uniform float4 screen_res; #define SMAA_RT_METRICS screen_res.zwxy #define SMAA_PRESET_ULTRA #define EDGE_DETECT_COLOR #include "smaa.hlsli" // Struct struct p_smaa { float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) }; float4 main(p_smaa I) : COLOR { float4 offset[3]; SMAAEdgeDetectionVS(I.tc0, offset); #if defined(EDGE_DETECT_COLOR) return float4(SMAAColorEdgeDetectionPS(I.tc0, offset, s_image), 0.0f, 0.0f); #else return float4(SMAALumaEdgeDetectionPS(I.tc0, offset, s_image), 0.0f, 0.0f); #endif }