@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
97 lines (96 loc) • 5.67 kB
JavaScript
;
import { AssemblerName } from "./_BaseRegister";
import { GlAssemblerController } from "../../../nodes/gl/code/Controller";
import { JsAssemblerController } from "../../../nodes/js/code/Controller";
import { ShaderAssemblerBasic } from "../../../nodes/gl/code/assemblers/materials/Basic";
import { ShaderAssemblerCloth } from "../../../nodes/gl/code/assemblers/cloth/ClothAssembler";
import { ShaderAssemblerLambert } from "../../../nodes/gl/code/assemblers/materials/Lambert";
import { ShaderAssemblerLine } from "../../../nodes/gl/code/assemblers/materials/Line";
import { ShaderAssemblerParticles } from "../../../nodes/gl/code/assemblers/particles/Particles";
import { ShaderAssemblerPhong } from "../../../nodes/gl/code/assemblers/materials/Phong";
import { ShaderAssemblerPhysical } from "../../../nodes/gl/code/assemblers/materials/Physical";
import { ShaderAssemblerPoints } from "../../../nodes/gl/code/assemblers/materials/Points";
import { ShaderAssemblerPost } from "../../../nodes/gl/code/assemblers/post/Post";
import { ShaderAssemblerRayMarching } from "../../../nodes/gl/code/assemblers/materials/RayMarching";
import { ShaderAssemblerStandard } from "../../../nodes/gl/code/assemblers/materials/Standard";
import { ShaderAssemblerTexture } from "../../../nodes/gl/code/assemblers/textures/Texture";
import { ShaderAssemblerTexture2DArray } from "../../../nodes/gl/code/assemblers/textures/Texture2DArray";
import { ShaderAssemblerToon } from "../../../nodes/gl/code/assemblers/materials/Toon";
import { ShaderAssemblerVolume } from "../../../nodes/gl/code/assemblers/materials/Volume";
import { ShaderAssemblerCustomMeshDepthForRender } from "../../../nodes/gl/code/assemblers/materials/custom/mesh/CustomMeshDepth";
import { ShaderAssemblerCustomMeshDistanceForRender } from "../../../nodes/gl/code/assemblers/materials/custom/mesh/CustomMeshDistance";
import { JsAssemblerActor } from "../../../nodes/js/code/assemblers/actor/ActorAssembler";
import { JsAssemblerEntityBuilder } from "../../../nodes/js/code/assemblers/entityBuilder/EntityBuilderAssembler";
import { JsAssemblerInstanceBuilder } from "../../../nodes/js/code/assemblers/instanceBuilder/InstanceBuilderAssembler";
import { JsAssemblerObjectBuilder } from "../../../nodes/js/code/assemblers/objectBuilder/ObjectBuilderAssembler";
import { JsAssemblerPointBuilder } from "../../../nodes/js/code/assemblers/pointBuilder/PointBuilderAssembler";
import { JsAssemblerSDF } from "../../../nodes/js/code/assemblers/sdf/SDF";
import { JsAssemblerSoftBody } from "../../../nodes/js/code/assemblers/softBody/SoftBodyAssembler";
export class AllAssemblersRegister {
static run(poly) {
poly.assemblersRegister.register(AssemblerName.GL_MESH_BASIC, GlAssemblerController, ShaderAssemblerBasic);
poly.assemblersRegister.register(AssemblerName.GL_CLOTH, GlAssemblerController, ShaderAssemblerCloth);
poly.assemblersRegister.register(AssemblerName.GL_MESH_LAMBERT, GlAssemblerController, ShaderAssemblerLambert);
poly.assemblersRegister.register(AssemblerName.GL_MESH_PHONG, GlAssemblerController, ShaderAssemblerPhong);
poly.assemblersRegister.register(AssemblerName.GL_MESH_TOON, GlAssemblerController, ShaderAssemblerToon);
poly.assemblersRegister.register(
AssemblerName.GL_MESH_STANDARD,
GlAssemblerController,
ShaderAssemblerStandard
);
poly.assemblersRegister.register(
AssemblerName.GL_MESH_PHYSICAL,
GlAssemblerController,
ShaderAssemblerPhysical
);
poly.assemblersRegister.register(
AssemblerName.GL_MESH_DEPTH,
GlAssemblerController,
ShaderAssemblerCustomMeshDepthForRender
);
poly.assemblersRegister.register(
AssemblerName.GL_MESH_DISTANCE,
GlAssemblerController,
ShaderAssemblerCustomMeshDistanceForRender
);
poly.assemblersRegister.register(AssemblerName.GL_PARTICLES, GlAssemblerController, ShaderAssemblerParticles);
poly.assemblersRegister.register(AssemblerName.GL_POINTS, GlAssemblerController, ShaderAssemblerPoints);
poly.assemblersRegister.register(AssemblerName.GL_LINE, GlAssemblerController, ShaderAssemblerLine);
poly.assemblersRegister.register(AssemblerName.GL_POST, GlAssemblerController, ShaderAssemblerPost);
poly.assemblersRegister.register(
AssemblerName.GL_RAYMARCHING,
GlAssemblerController,
ShaderAssemblerRayMarching
);
poly.assemblersRegister.register(AssemblerName.GL_TEXTURE, GlAssemblerController, ShaderAssemblerTexture);
poly.assemblersRegister.register(
AssemblerName.GL_TEXTURE_2D_ARRAY,
GlAssemblerController,
ShaderAssemblerTexture2DArray
);
poly.assemblersRegister.register(AssemblerName.GL_VOLUME, GlAssemblerController, ShaderAssemblerVolume);
poly.assemblersRegister.register(AssemblerName.JS_ACTOR, JsAssemblerController, JsAssemblerActor);
poly.assemblersRegister.register(
AssemblerName.JS_ENTITY_BUILDER,
JsAssemblerController,
JsAssemblerEntityBuilder
);
poly.assemblersRegister.register(
AssemblerName.JS_INSTANCE_BUILDER,
JsAssemblerController,
JsAssemblerInstanceBuilder
);
poly.assemblersRegister.register(
AssemblerName.JS_OBJECT_BUILDER,
JsAssemblerController,
JsAssemblerObjectBuilder
);
poly.assemblersRegister.register(
AssemblerName.JS_POINT_BUILDER,
JsAssemblerController,
JsAssemblerPointBuilder
);
poly.assemblersRegister.register(AssemblerName.JS_SDF, JsAssemblerController, JsAssemblerSDF);
poly.assemblersRegister.register(AssemblerName.JS_SOFT_BODY, JsAssemblerController, JsAssemblerSoftBody);
}
}