Nodes.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263
  1. // core
  2. import ArrayUniformNode from './core/ArrayUniformNode.js';
  3. import AttributeNode from './core/AttributeNode.js';
  4. import BypassNode from './core/BypassNode.js';
  5. import CodeNode from './core/CodeNode.js';
  6. import ConstNode from './core/ConstNode.js';
  7. import ContextNode from './core/ContextNode.js';
  8. import ExpressionNode from './core/ExpressionNode.js';
  9. import FunctionCallNode from './core/FunctionCallNode.js';
  10. import FunctionNode from './core/FunctionNode.js';
  11. import Node from './core/Node.js';
  12. import NodeAttribute from './core/NodeAttribute.js';
  13. import NodeBuilder from './core/NodeBuilder.js';
  14. import NodeCode from './core/NodeCode.js';
  15. import NodeFrame from './core/NodeFrame.js';
  16. import NodeFunctionInput from './core/NodeFunctionInput.js';
  17. import NodeKeywords from './core/NodeKeywords.js';
  18. import NodeUniform from './core/NodeUniform.js';
  19. import NodeVar from './core/NodeVar.js';
  20. import NodeVary from './core/NodeVary.js';
  21. import PropertyNode from './core/PropertyNode.js';
  22. import TempNode from './core/TempNode.js';
  23. import UniformNode from './core/UniformNode.js';
  24. import VarNode from './core/VarNode.js';
  25. import VaryNode from './core/VaryNode.js';
  26. // accessors
  27. import BufferNode from './accessors/BufferNode.js';
  28. import CameraNode from './accessors/CameraNode.js';
  29. import CubeTextureNode from './accessors/CubeTextureNode.js';
  30. import MaterialNode from './accessors/MaterialNode.js';
  31. import MaterialReferenceNode from './accessors/MaterialReferenceNode.js';
  32. import ModelNode from './accessors/ModelNode.js';
  33. import ModelViewProjectionNode from './accessors/ModelViewProjectionNode.js';
  34. import NormalNode from './accessors/NormalNode.js';
  35. import Object3DNode from './accessors/Object3DNode.js';
  36. import PointUVNode from './accessors/PointUVNode.js';
  37. import PositionNode from './accessors/PositionNode.js';
  38. import ReferenceNode from './accessors/ReferenceNode.js';
  39. import ReflectNode from './accessors/ReflectNode.js';
  40. import SkinningNode from './accessors/SkinningNode.js';
  41. import TextureNode from './accessors/TextureNode.js';
  42. import UVNode from './accessors/UVNode.js';
  43. // display
  44. import ColorSpaceNode from './display/ColorSpaceNode.js';
  45. import NormalMapNode from './display/NormalMapNode.js';
  46. // math
  47. import MathNode from './math/MathNode.js';
  48. import OperatorNode from './math/OperatorNode.js';
  49. import CondNode from './math/CondNode.js';
  50. // lights
  51. import LightContextNode from './lights/LightContextNode.js';
  52. import LightNode from './lights/LightNode.js';
  53. import LightsNode from './lights/LightsNode.js';
  54. // utils
  55. import ArrayElementNode from './utils/ArrayElementNode.js';
  56. import ConvertNode from './utils/ConvertNode.js';
  57. import JoinNode from './utils/JoinNode.js';
  58. import SplitNode from './utils/SplitNode.js';
  59. import SpriteSheetUVNode from './utils/SpriteSheetUVNode.js';
  60. import MatcapUVNode from './utils/MatcapUVNode.js';
  61. import OscNode from './utils/OscNode.js';
  62. import TimerNode from './utils/TimerNode.js';
  63. // loaders
  64. import NodeLoader from './loaders/NodeLoader.js';
  65. import NodeObjectLoader from './loaders/NodeObjectLoader.js';
  66. import NodeMaterialLoader from './loaders/NodeMaterialLoader.js';
  67. // procedural
  68. import CheckerNode from './procedural/CheckerNode.js';
  69. // fog
  70. import FogNode from './fog/FogNode.js';
  71. import FogRangeNode from './fog/FogRangeNode.js';
  72. // core
  73. export * from './core/constants.js';
  74. // functions
  75. export * from './functions/BSDFs.js';
  76. // materials
  77. export * from './materials/Materials.js';
  78. // shader node
  79. export * from './ShaderNode.js';
  80. const nodeLib = {
  81. // core
  82. ArrayUniformNode,
  83. AttributeNode,
  84. BypassNode,
  85. CodeNode,
  86. ContextNode,
  87. ConstNode,
  88. ExpressionNode,
  89. FunctionCallNode,
  90. FunctionNode,
  91. Node,
  92. NodeAttribute,
  93. NodeBuilder,
  94. NodeCode,
  95. NodeFrame,
  96. NodeFunctionInput,
  97. NodeKeywords,
  98. NodeUniform,
  99. NodeVar,
  100. NodeVary,
  101. PropertyNode,
  102. TempNode,
  103. UniformNode,
  104. VarNode,
  105. VaryNode,
  106. // accessors
  107. BufferNode,
  108. CameraNode,
  109. CubeTextureNode,
  110. MaterialNode,
  111. MaterialReferenceNode,
  112. ModelNode,
  113. ModelViewProjectionNode,
  114. NormalNode,
  115. Object3DNode,
  116. PointUVNode,
  117. PositionNode,
  118. ReferenceNode,
  119. ReflectNode,
  120. SkinningNode,
  121. TextureNode,
  122. UVNode,
  123. // display
  124. ColorSpaceNode,
  125. NormalMapNode,
  126. // math
  127. MathNode,
  128. OperatorNode,
  129. CondNode,
  130. // lights
  131. LightContextNode,
  132. LightNode,
  133. LightsNode,
  134. // utils
  135. ArrayElementNode,
  136. ConvertNode,
  137. JoinNode,
  138. SplitNode,
  139. SpriteSheetUVNode,
  140. MatcapUVNode,
  141. OscNode,
  142. TimerNode,
  143. // procedural
  144. CheckerNode,
  145. // fog
  146. FogNode,
  147. FogRangeNode,
  148. // loaders
  149. NodeLoader,
  150. NodeObjectLoader,
  151. NodeMaterialLoader
  152. };
  153. export const fromType = ( type ) => {
  154. return new nodeLib[ type ]();
  155. };
  156. export {
  157. // core
  158. ArrayUniformNode,
  159. AttributeNode,
  160. BypassNode,
  161. CodeNode,
  162. ContextNode,
  163. ConstNode,
  164. ExpressionNode,
  165. FunctionCallNode,
  166. FunctionNode,
  167. Node,
  168. NodeAttribute,
  169. NodeBuilder,
  170. NodeCode,
  171. NodeFrame,
  172. NodeFunctionInput,
  173. NodeKeywords,
  174. NodeUniform,
  175. NodeVar,
  176. NodeVary,
  177. PropertyNode,
  178. TempNode,
  179. UniformNode,
  180. VarNode,
  181. VaryNode,
  182. // accessors
  183. BufferNode,
  184. CameraNode,
  185. CubeTextureNode,
  186. MaterialNode,
  187. MaterialReferenceNode,
  188. ModelNode,
  189. ModelViewProjectionNode,
  190. NormalNode,
  191. Object3DNode,
  192. PointUVNode,
  193. PositionNode,
  194. ReferenceNode,
  195. ReflectNode,
  196. SkinningNode,
  197. TextureNode,
  198. UVNode,
  199. // display
  200. ColorSpaceNode,
  201. NormalMapNode,
  202. // math
  203. MathNode,
  204. OperatorNode,
  205. CondNode,
  206. // lights
  207. LightContextNode,
  208. LightNode,
  209. LightsNode,
  210. // utils
  211. ArrayElementNode,
  212. ConvertNode,
  213. JoinNode,
  214. SplitNode,
  215. SpriteSheetUVNode,
  216. MatcapUVNode,
  217. OscNode,
  218. TimerNode,
  219. // procedural
  220. CheckerNode,
  221. // fog
  222. FogNode,
  223. FogRangeNode,
  224. // loaders
  225. NodeLoader,
  226. NodeObjectLoader,
  227. NodeMaterialLoader
  228. };