@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
46 lines (45 loc) • 1.81 kB
JavaScript
;
export var AssemblerName = /* @__PURE__ */ ((AssemblerName2) => {
AssemblerName2["GL_CLOTH"] = "GL_CLOTH";
AssemblerName2["GL_LINE"] = "GL_LINE";
AssemblerName2["GL_MESH_BASIC"] = "GL_MESH_BASIC";
AssemblerName2["GL_MESH_DEPTH"] = "GL_MESH_DEPTH";
AssemblerName2["GL_MESH_DISTANCE"] = "GL_MESH_DISTANCE";
AssemblerName2["GL_MESH_LAMBERT"] = "GL_MESH_LAMBERT";
AssemblerName2["GL_MESH_PHONG"] = "GL_MESH_PHONG";
AssemblerName2["GL_MESH_PHYSICAL"] = "GL_MESH_PHYSICAL";
AssemblerName2["GL_MESH_STANDARD"] = "GL_MESH_STANDARD";
AssemblerName2["GL_MESH_TOON"] = "GL_MESH_TOON";
AssemblerName2["GL_PARTICLES"] = "GL_PARTICLES";
AssemblerName2["GL_POINTS"] = "GL_POINTS";
AssemblerName2["GL_POST"] = "GL_POST";
AssemblerName2["GL_RAYMARCHING"] = "GL_RAYMARCHING";
AssemblerName2["GL_TEXTURE"] = "GL_TEXTURE";
AssemblerName2["GL_TEXTURE_2D_ARRAY"] = "GL_TEXTURE_2D_ARRAY";
AssemblerName2["GL_VOLUME"] = "GL_VOLUME";
AssemblerName2["JS_ACTOR"] = "JS_ACTOR";
AssemblerName2["JS_ENTITY_BUILDER"] = "JS_ENTITY_BUILDER";
AssemblerName2["JS_INSTANCE_BUILDER"] = "JS_INSTANCE_BUILDER";
AssemblerName2["JS_OBJECT_BUILDER"] = "JS_OBJECT_BUILDER";
AssemblerName2["JS_POINT_BUILDER"] = "JS_POINT_BUILDER";
AssemblerName2["JS_SDF"] = "JS_SDF";
AssemblerName2["JS_SOFT_BODY"] = "JS_SOFT_BODY";
return AssemblerName2;
})(AssemblerName || {});
export class BaseAssemblersRegister {
constructor() {
this._controllerAssemblerByName = /* @__PURE__ */ new Map();
}
register(name, controller, assembler) {
this._controllerAssemblerByName.set(name, {
controller,
assembler
});
}
unregister(name) {
this._controllerAssemblerByName.delete(name);
}
traverse(callback) {
this._controllerAssemblerByName.forEach(callback);
}
}