Nodes.js 5.8 KB

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