Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
827 B

  1. // STATIC: "CONVERT_TO_SRGB" "0..1" [ps20b][= g_pHardwareConfig->NeedsShaderSRGBConversion()] [PC]
  2. // STATIC: "CONVERT_TO_SRGB" "0..0" [= 0] [XBOX]
  3. #define HDRTYPE HDR_TYPE_FLOAT
  4. #define HDRENABLED 1
  5. #include "common_ps_fxc.h"
  6. sampler FBSampler : register( s0 );
  7. struct PS_INPUT
  8. {
  9. float2 texCoord : TEXCOORD0;
  10. };
  11. #define MAX_LUM 5
  12. #define MIN_LUM .1
  13. float4 main( PS_INPUT i ) : COLOR
  14. {
  15. float4 fbSample = tex2D( FBSampler, i.texCoord );
  16. float lum=0.33*(fbSample.x+fbSample.y+fbSample.z);
  17. // derive a luminance-based scale factor for tone mapping
  18. float factor=1.0;
  19. if (lum<MIN_LUM)
  20. {
  21. }
  22. else if (lum>MAX_LUM)
  23. {
  24. }
  25. // linear scale for tone mapping
  26. // fbSample *= lum * LINEAR_LIGHT_SCALE;
  27. // assume that sRGB write is enabled.
  28. return FinalOutput( fbSample, 0, PIXEL_FOG_TYPE_NONE, TONEMAP_SCALE_NONE );
  29. }