Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 
 
 

70 řádky
1.4 KiB

  1. [vert.glsl]
  2. #version 130
  3. attribute vec3 in_Position;
  4. attribute vec2 in_TexCoord;
  5. varying vec2 pass_TexCoord;
  6. uniform mat4 u_projection;
  7. uniform mat4 u_view;
  8. uniform mat4 u_model;
  9. void main()
  10. {
  11. gl_Position = u_projection * u_view * u_model
  12. * vec4(in_Position, 1.0);
  13. pass_TexCoord = in_TexCoord;
  14. }
  15. [frag.glsl]
  16. #version 130
  17. #if defined GL_ES
  18. precision mediump float;
  19. #endif
  20. uniform sampler2D u_texture;
  21. uniform vec2 u_texsize;
  22. varying vec2 pass_TexCoord;
  23. void main()
  24. {
  25. vec4 col = texture2D(u_texture, pass_TexCoord);
  26. if (col.a == 0.0)
  27. discard;
  28. gl_FragColor = col;
  29. }
  30. [vert.hlsl]
  31. void main(float4 in_Position : POSITION,
  32. float2 in_TexCoord : TEXCOORD0,
  33. uniform float4x4 u_projection,
  34. uniform float4x4 u_view,
  35. uniform float4x4 u_model,
  36. uniform float2 u_texsize,
  37. out float2 out_TexCoord : TEXCOORD0,
  38. out float4 out_Position : POSITION)
  39. {
  40. #if _XBOX
  41. float2 delta = float2(-0.5, -0.5) / u_texsize;
  42. #else
  43. float2 delta = float2(0.0, 0.0);
  44. #endif
  45. out_Position = mul(u_projection, mul(u_view, mul(u_model, in_Position)));
  46. out_TexCoord = in_TexCoord + delta;
  47. }
  48. [frag.hlsl]
  49. void main(float2 in_TexCoord : TEXCOORD0,
  50. uniform sampler2D u_texture,
  51. out float4 out_FragColor : COLOR)
  52. {
  53. float4 col = tex2D(u_texture, in_TexCoord);
  54. out_FragColor = col;
  55. }