@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
67 lines • 1.78 kB
TypeScript
export class AbstractRenderAdapter {
/**
*
* @type {number}
* @protected
*/
protected __object_count: number;
/**
*
* @type {THREE.Object3D[]}
* @protected
*/
protected __objects: THREE.Object3D[];
/**
* Sorting objects by material will help reduce context switching and number of graphics API calls
*/
sort_by_material(): void;
/**
*
* @param {THREE.BufferGeometry} geometry
* @param {THREE.Material} material
* @param {number} instance_count
* @returns {number}
*/
score(geometry: THREE.BufferGeometry, material: THREE.Material, instance_count: number): number;
/**
* Express intent to draw
* @param {ShadedGeometry} sg
* @returns {boolean} true if able to draw immediately, false otherwise
*/
intend_draw(sg: ShadedGeometry): boolean;
/**
*
* @param {ShadedGeometry} sg
* @returns {void}
*/
add(sg: ShadedGeometry): void;
/**
*
* @param {THREE.WebGLRenderer} renderer
* @param {CameraView} view
*/
build_start(renderer: THREE.WebGLRenderer, view: CameraView): void;
build_end(): void;
clear(): void;
/**
* Used to perform infrequent housekeeping on the adapter's internal data structures
* Returns a maintenance sequence
* @return {Generator}
*/
maintain(): Generator;
/**
* @returns {THREE.Object3D[]}
*/
get objects(): import("three").Object3D<import("three").Event>[];
/**
* @returns {number}
*/
get object_count(): number;
dispose(): void;
/**
* @readonly
* @type {boolean}
*/
readonly isShadedGeometryRenderAdapter: boolean;
}
//# sourceMappingURL=AbstractRenderAdapter.d.ts.map