import { Object3D, Scene, Camera, Vector2, Vector3, Vector4, Color, Material } from '../../../src/Three'; export class RenderableObject { id: number; object: Object3D; z: number; renderOrder: number; } export class RenderableFace { id: number; v1: RenderableVertex; v2: RenderableVertex; v3: RenderableVertex; normalModel: Vector3; vertexNormalsModel: Vector3[]; vertexNormalsLength: number; color: Color; material: Material; uvs: Vector2[]; z: number; renderOrder: number; } export class RenderableVertex { position: Vector3; positionWorld: Vector3; positionScreen: Vector4; visible: boolean; copy( vertex: RenderableVertex ): void; } export class RenderableLine { id: number; v1: RenderableVertex; v2: RenderableVertex; vertexColors: Color[]; material: Material; z: number; renderOrder: number; } export class RenderableSprite { id: number; object: Object3D; x: number; y: number; z: number; rotation: number; scale: Vector2; material: Material; renderOrder: number; } export class Projector { constructor(); projectScene( scene: Scene, camera: Camera, sortObjects: boolean, sortElements: boolean ); }