sharpen.psh
上传用户:tangyu_668
上传日期:2014-02-27
资源大小:678k
文件大小:1k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. sampler s0 : register(s0); 
  2. float4 p0 : register(c0); 
  3. float4 p1 : register(c1); 
  4.  
  5. #define effect_width (1.6) 
  6. #define val0 (2.0) 
  7. #define val1 (-0.125) 
  8. #define width (p0[0]) 
  9. #define height (p0[1]) 
  10.  
  11. float4 main(float2 tex : TEXCOORD0) : COLOR 
  12. float dx = effect_width/width; 
  13. float dy = effect_width/height; 
  14.  
  15. float4 c1 = tex2D(s0, tex + float2(-dx,-dy)) * val1; 
  16. float4 c2 = tex2D(s0, tex + float2(0,-dy)) * val1; 
  17. float4 c3 = tex2D(s0, tex + float2(-dx,0)) * val1; 
  18. float4 c4 = tex2D(s0, tex + float2(dx,0)) * val1; 
  19. float4 c5 = tex2D(s0, tex + float2(0,dy)) * val1; 
  20. float4 c6 = tex2D(s0, tex + float2(dx,dy)) * val1; 
  21. float4 c7 = tex2D(s0, tex + float2(-dx,+dy)) * val1; 
  22. float4 c8 = tex2D(s0, tex + float2(+dx,-dy)) * val1; 
  23. float4 c9 = tex2D(s0, tex) * val0; 
  24. float4 c0 = (c1 + c2 + c3 + c4 + c5 + c6 + c7 + c8 +c9); 
  25. return c0; 
  26. }