Source: dependencies/pixi-gl-core/shader/defaultValue.js

dependencies/pixi-gl-core/shader/defaultValue.js

  1. /**
  2. * @class
  3. * @memberof PIXI.glCore.shader
  4. * @param type {String} Type of value
  5. * @param size {Number}
  6. */
  7. var defaultValue = function(type, size)
  8. {
  9. switch (type)
  10. {
  11. case 'float':
  12. return 0;
  13. case 'vec2':
  14. return new Float32Array(2 * size);
  15. case 'vec3':
  16. return new Float32Array(3 * size);
  17. case 'vec4':
  18. return new Float32Array(4 * size);
  19. case 'int':
  20. case 'sampler2D':
  21. return 0;
  22. case 'ivec2':
  23. return new Int32Array(2 * size);
  24. case 'ivec3':
  25. return new Int32Array(3 * size);
  26. case 'ivec4':
  27. return new Int32Array(4 * size);
  28. case 'bool':
  29. return false;
  30. case 'bvec2':
  31. return booleanArray( 2 * size);
  32. case 'bvec3':
  33. return booleanArray(3 * size);
  34. case 'bvec4':
  35. return booleanArray(4 * size);
  36. case 'mat2':
  37. return new Float32Array([1, 0,
  38. 0, 1]);
  39. case 'mat3':
  40. return new Float32Array([1, 0, 0,
  41. 0, 1, 0,
  42. 0, 0, 1]);
  43. case 'mat4':
  44. return new Float32Array([1, 0, 0, 0,
  45. 0, 1, 0, 0,
  46. 0, 0, 1, 0,
  47. 0, 0, 0, 1]);
  48. }
  49. };
  50. var booleanArray = function(size)
  51. {
  52. var array = new Array(size);
  53. for (var i = 0; i < array.length; i++)
  54. {
  55. array[i] = false;
  56. }
  57. return array;
  58. };
  59. module.exports = defaultValue;