polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
85 lines (75 loc) • 3.6 kB
text/typescript
import {CATEGORY_OBJ} from './Category';
import {AmbientLightObjNode} from '../../../nodes/obj/AmbientLight';
import {AreaLightObjNode} from '../../../nodes/obj/AreaLight';
import {DirectionalLightObjNode} from '../../../nodes/obj/DirectionalLight';
import {HemisphereLightObjNode} from '../../../nodes/obj/HemisphereLight';
import {PointLightObjNode} from '../../../nodes/obj/PointLight';
import {SpotLightObjNode} from '../../../nodes/obj/SpotLight';
import {AnimationsObjNode} from '../../../nodes/obj/Animations';
import {CopObjNode} from '../../../nodes/obj/Cop';
import {EventsObjNode} from '../../../nodes/obj/Events';
import {MaterialsObjNode} from '../../../nodes/obj/Materials';
import {PostProcessObjNode} from '../../../nodes/obj/PostProcess';
import {RenderersObjNode} from '../../../nodes/obj/Renderers';
import {BlendObjNode} from '../../../nodes/obj/Blend';
import {GeoObjNode} from '../../../nodes/obj/Geo';
import {NullObjNode} from '../../../nodes/obj/Null';
import {PolarTransformObjNode} from '../../../nodes/obj/PolarTransform';
import {PolyObjNode} from '../../../nodes/obj/Poly';
import {RivetObjNode} from '../../../nodes/obj/Rivet';
import {SceneObjNode} from '../../../nodes/obj/Scene';
import {OrthographicCameraObjNode} from '../../../nodes/obj/OrthographicCamera';
import {PerspectiveCameraObjNode} from '../../../nodes/obj/PerspectiveCamera';
// import {CubeCameraObj} from '../../nodes/obj/CubeCamera';
export interface ObjNodeChildrenMap {
ambientLight: AmbientLightObjNode;
areaLight: AreaLightObjNode;
blend: BlendObjNode;
directionalLight: DirectionalLightObjNode;
geo: GeoObjNode;
hemisphereLight: HemisphereLightObjNode;
null: NullObjNode;
orthographicCamera: OrthographicCameraObjNode;
perspectiveCamera: PerspectiveCameraObjNode;
polarTransform: PolarTransformObjNode;
pointLight: PointLightObjNode;
poly: PolyObjNode;
rivet: RivetObjNode;
scene: SceneObjNode;
spotLight: SpotLightObjNode;
// networks
animations: AnimationsObjNode;
cop: CopObjNode;
events: EventsObjNode;
materials: MaterialsObjNode;
postProcess: PostProcessObjNode;
renderers: RenderersObjNode;
}
import {PolyEngine} from '../../../Poly';
export class ObjRegister {
static run(poly: PolyEngine) {
poly.registerNode(AmbientLightObjNode, CATEGORY_OBJ.LIGHT);
poly.registerNode(AreaLightObjNode, CATEGORY_OBJ.LIGHT);
poly.registerNode(DirectionalLightObjNode, CATEGORY_OBJ.LIGHT);
poly.registerNode(HemisphereLightObjNode, CATEGORY_OBJ.LIGHT);
poly.registerNode(PointLightObjNode, CATEGORY_OBJ.LIGHT);
poly.registerNode(SpotLightObjNode, CATEGORY_OBJ.LIGHT);
poly.registerNode(BlendObjNode, CATEGORY_OBJ.TRANSFORM);
poly.registerNode(GeoObjNode, CATEGORY_OBJ.GEOMETRY);
poly.registerNode(NullObjNode, CATEGORY_OBJ.TRANSFORM);
poly.registerNode(PolarTransformObjNode, CATEGORY_OBJ.TRANSFORM);
poly.registerNode(PolyObjNode, CATEGORY_OBJ.ADVANCED);
poly.registerNode(RivetObjNode, CATEGORY_OBJ.TRANSFORM);
poly.registerNode(SceneObjNode, CATEGORY_OBJ.ADVANCED);
poly.registerNode(OrthographicCameraObjNode, CATEGORY_OBJ.CAMERA);
poly.registerNode(PerspectiveCameraObjNode, CATEGORY_OBJ.CAMERA);
// poly.registerNode(CubeCameraObj, CATEGORY_OBJ.CAMERA)
// networks
poly.registerNode(AnimationsObjNode, CATEGORY_OBJ.NETWORK);
poly.registerNode(CopObjNode, CATEGORY_OBJ.NETWORK);
poly.registerNode(EventsObjNode, CATEGORY_OBJ.NETWORK);
poly.registerNode(MaterialsObjNode, CATEGORY_OBJ.NETWORK);
poly.registerNode(PostProcessObjNode, CATEGORY_OBJ.NETWORK);
poly.registerNode(RenderersObjNode, CATEGORY_OBJ.NETWORK);
}
}