babylon.webgl2.ts 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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 TEXTURE_3D: number;
  8. readonly TEXTURE_2D_ARRAY: number;
  9. readonly TEXTURE_WRAP_R: number;
  10. texImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, format: number, type: number, pixels: ArrayBufferView | null): void;
  11. texImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, format: number, type: number, pixels: ArrayBufferView, offset: number): void;
  12. 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;
  13. compressedTexImage3D(target: number, level: number, internalformat: number, width: number, height: number, depth: number, border: number, data: ArrayBufferView, offset?: number, length?: number): void;
  14. readonly TRANSFORM_FEEDBACK: number;
  15. readonly INTERLEAVED_ATTRIBS: number;
  16. readonly TRANSFORM_FEEDBACK_BUFFER: number;
  17. createTransformFeedback(): WebGLTransformFeedback;
  18. deleteTransformFeedback(transformFeedbac: WebGLTransformFeedback): void;
  19. bindTransformFeedback(target: number, transformFeedback: WebGLTransformFeedback | null): void;
  20. beginTransformFeedback(primitiveMode: number): void;
  21. endTransformFeedback(): void;
  22. transformFeedbackVaryings(program: WebGLProgram, varyings: string[], bufferMode: number): void;
  23. }
  24. interface ImageBitmap {
  25. readonly width: number;
  26. readonly height: number;
  27. close(): void;
  28. }
  29. interface WebGLQuery extends WebGLObject {
  30. }
  31. declare var WebGLQuery: {
  32. prototype: WebGLQuery;
  33. new(): WebGLQuery;
  34. };
  35. interface WebGLSampler extends WebGLObject {
  36. }
  37. declare var WebGLSampler: {
  38. prototype: WebGLSampler;
  39. new(): WebGLSampler;
  40. };
  41. interface WebGLSync extends WebGLObject {
  42. }
  43. declare var WebGLSync: {
  44. prototype: WebGLSync;
  45. new(): WebGLSync;
  46. };
  47. interface WebGLTransformFeedback extends WebGLObject {
  48. }
  49. declare var WebGLTransformFeedback: {
  50. prototype: WebGLTransformFeedback;
  51. new(): WebGLTransformFeedback;
  52. };
  53. interface WebGLVertexArrayObject extends WebGLObject {
  54. }
  55. declare var WebGLVertexArrayObject: {
  56. prototype: WebGLVertexArrayObject;
  57. new(): WebGLVertexArrayObject;
  58. };