NodeBuilder.d.ts 4.1 KB

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