300BuiltIns.frag 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #version 300 es
  2. int imax, imin;
  3. uint umax, umin;
  4. vec3 x, y; // ERROR, needs default precision
  5. bvec3 bv;
  6. uint uy;
  7. uvec2 uv2c;
  8. uvec2 uv2y;
  9. uvec2 uv2x;
  10. uvec4 uv4y;
  11. ivec3 iv3a;
  12. ivec3 iv3b;
  13. ivec4 iv4a;
  14. ivec4 iv4b;
  15. float f;
  16. vec2 v2a, v2b;
  17. vec4 v4;
  18. void main()
  19. {
  20. // 1.3 int
  21. vec3 v = mix(x, y, bv);
  22. ivec4 iv10 = abs(iv4a);
  23. ivec4 iv11 = sign(iv4a);
  24. ivec4 iv12 = min(iv4a, iv4b);
  25. ivec4 iv13 = min(iv4a, imin);
  26. uvec2 u = min(uv2x, uv2y);
  27. uvec4 uv = min(uv4y, uy);
  28. ivec3 iv14 = max(iv3a, iv3b);
  29. ivec4 iv15 = max(iv4a, imax);
  30. uvec2 u10 = max(uv2x, uv2y);
  31. uvec2 u11 = max(uv2x, uy);
  32. ivec4 iv16 = clamp(iv4a, iv4a, iv4b);
  33. ivec4 iv17 = clamp(iv4a, imin, imax);
  34. uvec2 u12 = clamp(uv2x, uv2y, uv2c);
  35. uvec4 uv10 = clamp(uv4y, umin, umax);
  36. // 1.3 float
  37. vec3 modfOut;
  38. vec3 v11 = modf(x, modfOut);
  39. float t = trunc(f);
  40. vec2 v12 = round(v2a);
  41. vec2 v13 = roundEven(v2a);
  42. bvec2 b10 = isnan(v2a);
  43. bvec4 b11 = isinf(v4);
  44. // 3.3 float
  45. int i = floatBitsToInt(f);
  46. uvec4 uv11 = floatBitsToUint(v4);
  47. vec4 v14 = intBitsToFloat(iv4a);
  48. vec2 v15 = uintBitsToFloat(uv2c);
  49. // 4.0 pack
  50. uint u19 = packSnorm2x16(v2a);
  51. vec2 v20 = unpackSnorm2x16(uy);
  52. uint u15 = packUnorm2x16(v2a);
  53. vec2 v16 = unpackUnorm2x16(uy);
  54. uint u17 = packHalf2x16(v2b);
  55. vec2 v18 = unpackHalf2x16(uy);
  56. // not present
  57. noise2(v18); // ERROR, not present
  58. float t__; // ERROR, no __ until revision 310
  59. // ERROR, no __ until revision 310
  60. #define __D
  61. }