polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
45 lines (44 loc) • 2.2 kB
TypeScript
import { AssemblerName, ControllerAssemblerPair } from './_BaseRegister';
import { GlAssemblerController } from '../../../nodes/gl/code/Controller';
import { ShaderAssemblerBasic } from '../../../nodes/gl/code/assemblers/materials/Basic';
import { ShaderAssemblerLambert } from '../../../nodes/gl/code/assemblers/materials/Lambert';
import { ShaderAssemblerStandard } from '../../../nodes/gl/code/assemblers/materials/Standard';
import { ShaderAssemblerPoints } from '../../../nodes/gl/code/assemblers/materials/Points';
import { ShaderAssemblerParticles } from '../../../nodes/gl/code/assemblers/particles/Particles';
import { ShaderAssemblerTexture } from '../../../nodes/gl/code/assemblers/textures/Texture';
import { ShaderAssemblerVolume } from '../../../nodes/gl/code/assemblers/materials/Volume';
export interface AssemblersMap extends PolyDictionary<ControllerAssemblerPair> {
[AssemblerName.GL_MESH_BASIC]: {
controller: GlAssemblerController<ShaderAssemblerBasic>;
assembler: typeof ShaderAssemblerBasic;
};
[AssemblerName.GL_MESH_LAMBERT]: {
controller: GlAssemblerController<ShaderAssemblerLambert>;
assembler: typeof ShaderAssemblerLambert;
};
[AssemblerName.GL_MESH_STANDARD]: {
controller: GlAssemblerController<ShaderAssemblerStandard>;
assembler: typeof ShaderAssemblerStandard;
};
[AssemblerName.GL_PARTICLES]: {
controller: GlAssemblerController<ShaderAssemblerParticles>;
assembler: typeof ShaderAssemblerParticles;
};
[AssemblerName.GL_POINTS]: {
controller: GlAssemblerController<ShaderAssemblerPoints>;
assembler: typeof ShaderAssemblerPoints;
};
[AssemblerName.GL_TEXTURE]: {
controller: GlAssemblerController<ShaderAssemblerTexture>;
assembler: typeof ShaderAssemblerTexture;
};
[AssemblerName.GL_VOLUME]: {
controller: GlAssemblerController<ShaderAssemblerVolume>;
assembler: typeof ShaderAssemblerVolume;
};
}
import { PolyEngine } from '../../../Poly';
import { PolyDictionary } from '../../../../types/GlobalTypes';
export declare class AllAssemblersRegister {
static run(poly: PolyEngine): void;
}