babylon.webgl2.ts 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. // Type definitions for WebGL 2, Editor's Draft Fri Feb 24 16:10:18 2017 -0800
  2. // Project: https://www.khronos.org/registry/webgl/specs/latest/2.0/
  3. // Definitions by: Nico Kemnitz <https://github.com/nkemnitz/>
  4. // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
  5. interface WebGLRenderingContext {
  6. readonly RASTERIZER_DISCARD: number;
  7. readonly DEPTH_COMPONENT24: number;
  8. readonly TEXTURE_3D: number;
  9. readonly TEXTURE_2D_ARRAY: number;
  10. readonly TEXTURE_COMPARE_FUNC: number;
  11. readonly TEXTURE_COMPARE_MODE: number;
  12. readonly COMPARE_REF_TO_TEXTURE: number;
  13. readonly TEXTURE_WRAP_R: number;
  14. texImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, format: number, type: number, pixels: ArrayBufferView | null): void;
  15. texImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, format: number, type: number, pixels: ArrayBufferView, offset: number): void;
  16. texImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, format: number, type: number, pixels: ImageBitmap | ImageData | HTMLVideoElement | HTMLImageElement | HTMLCanvasElement): void;
  17. compressedTexImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, data: ArrayBufferView, offset?: number, length?: number): void;
  18. readonly TRANSFORM_FEEDBACK: number;
  19. readonly INTERLEAVED_ATTRIBS: number;
  20. readonly TRANSFORM_FEEDBACK_BUFFER: number;
  21. createTransformFeedback(): WebGLTransformFeedback;
  22. deleteTransformFeedback(transformFeedbac: WebGLTransformFeedback): void;
  23. bindTransformFeedback(target: number, transformFeedback: WebGLTransformFeedback | null): void;
  24. beginTransformFeedback(primitiveMode: number): void;
  25. endTransformFeedback(): void;
  26. transformFeedbackVaryings(program: WebGLProgram, varyings: string[], bufferMode: number): void;
  27. }
  28. interface ImageBitmap {
  29. readonly width: number;
  30. readonly height: number;
  31. close(): void;
  32. }
  33. interface WebGLQuery extends WebGLObject {
  34. }
  35. declare var WebGLQuery: {
  36. prototype: WebGLQuery;
  37. new(): WebGLQuery;
  38. };
  39. interface WebGLSampler extends WebGLObject {
  40. }
  41. declare var WebGLSampler: {
  42. prototype: WebGLSampler;
  43. new(): WebGLSampler;
  44. };
  45. interface WebGLSync extends WebGLObject {
  46. }
  47. declare var WebGLSync: {
  48. prototype: WebGLSync;
  49. new(): WebGLSync;
  50. };
  51. interface WebGLTransformFeedback extends WebGLObject {
  52. }
  53. declare var WebGLTransformFeedback: {
  54. prototype: WebGLTransformFeedback;
  55. new(): WebGLTransformFeedback;
  56. };
  57. interface WebGLVertexArrayObject extends WebGLObject {
  58. }
  59. declare var WebGLVertexArrayObject: {
  60. prototype: WebGLVertexArrayObject;
  61. new(): WebGLVertexArrayObject;
  62. };