NodeBuilder.d.ts 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. import {
  2. Material,
  3. Texture,
  4. TextureEncoding,
  5. WebGLRenderer
  6. } from '../../../../src/Three';
  7. import { Node } from './Node';
  8. import { NodeUniform } from './NodeUniform';
  9. export class NodeBuilder {
  10. constructor();
  11. slots: string[];
  12. caches: string[];
  13. contexts: object[];
  14. keywords: object;
  15. nodeData: object;
  16. requires: {
  17. uv: boolean[];
  18. color: boolean[];
  19. lights: boolean;
  20. fog: boolean;
  21. };
  22. includes: {
  23. consts: object[];
  24. functions: object[];
  25. structs: object[];
  26. };
  27. attributes: object;
  28. prefixCode: string;
  29. parsCode: {
  30. vertex: string;
  31. fragment: string;
  32. };
  33. code: {
  34. vertex: string;
  35. fragment: string;
  36. };
  37. nodeCode: {
  38. vertex: string;
  39. fragment: string;
  40. };
  41. resultCode: {
  42. vertex: string;
  43. fragment: string;
  44. };
  45. finalCode: {
  46. vertex: string;
  47. fragment: string;
  48. };
  49. inputs: {
  50. uniforms: {
  51. list: object[];
  52. vertex: object[];
  53. fragment: object[];
  54. };
  55. vars: {
  56. varying: object[];
  57. vertex: object[];
  58. fragment: object[];
  59. }
  60. };
  61. defines: object;
  62. uniforms: object;
  63. extensions: object;
  64. updaters: object[];
  65. nodes: object[];
  66. analyzing: boolean;
  67. build( vertex: Node, fragment: Node ): this;
  68. buildShader( shader: string, node: Node ): void;
  69. setMaterial( material: Material, renderer: WebGLRenderer ): this;
  70. addFlow( slot: string, cache?: string, context?: object ): this;
  71. removeFlow(): this;
  72. addCache( name: string ): this;
  73. removeCache(): this;
  74. addContext( context: object ): this;
  75. removeContext(): this;
  76. addSlot( name: string ): this;
  77. removeSlot(): this;
  78. addVertexCode( code: string ): void;
  79. addFragmentCode( code: string ): void;
  80. addCode( code: string, shader: string ): void;
  81. addVertexNodeCode( code: string ): void;
  82. addFragmentNodeCode( code: string ): void;
  83. addNodeCode( code: string, shader: string ): void;
  84. clearNodeCode( shader: string ): string;
  85. clearVertexNodeCode(): string;
  86. clearFragmentNodeCode(): string;
  87. addVertexFinalCode( code: string ): void;
  88. addFragmentFinalCode( code: string ): void;
  89. addFinalCode( code: string, shader: string ): void;
  90. addVertexParsCode( code: string ): void;
  91. addFragmentParsCode( code: string ): void;
  92. addParsCode( code: string, shader: string ): void;
  93. addVaryCode( code: string ): void;
  94. isCache( name: string ): boolean;
  95. isSlot( name: string ): boolean;
  96. define( name: string, value: any ): void;
  97. isDefined( name: string ): boolean;
  98. getVar( uuid: string, type: string, ns: string, shader?: string, prefix?: string, label?: string ): object;
  99. getVar( uuid: string, type: string, ns: string, label: string ): object;
  100. getAttribute( name: string, type: string ): any;
  101. getCode( shader: string ): string;
  102. getVarListCode( vars: object[], prefix?: string ): string;
  103. getVars( shader: string ): object[];
  104. getNodeData( node: Node ): object;
  105. createUniform( shader: string, type: string, node: Node, ns?: string, needsUpdate?: boolean, label?: string ): NodeUniform;
  106. createVertexUniform( type: string, node: Node, ns?: string, needsUpdate?: boolean, label?: string ): NodeUniform;
  107. createFragmentUniform( type: string, node: Node, ns?: string, needsUpdate?: boolean, label?: string ): NodeUniform;
  108. include( node: Node, parent?: boolean, source?: string ): void;
  109. colorToVectorProperties( color: string ): string;
  110. colorToVector( color: string ): string;
  111. getIncludes( type: string, shader: string ): object[];
  112. getIncludesCode( type: string, shader: string ): string;
  113. getConstructorFromLength( len: number ): string;
  114. isTypeMatrix( format: string ): boolean;
  115. getTypeLength( type: string ): number;
  116. getTypeFromLength( len: number ): string;
  117. findNode(): Node;
  118. resolve(): void;
  119. format( code: string, from: string, to: string ): string;
  120. getTypeByFormat( format: string ): string;
  121. getFormatByType( type: string ): string;
  122. getUuid( uuid: string, useCache?: boolean ): string;
  123. getElementByIndex( index: number ): string;
  124. getIndexByElement( elm: string ): number;
  125. isShader( shader: string ): boolean;
  126. setShader( shader: string ): this;
  127. mergeDefines( defines: object ): object;
  128. mergeUniform( uniforms: object ): object;
  129. getTextureEncodingFromMap( map: Texture ): TextureEncoding;
  130. }