Nodes.js 6.1 KB

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