@awayjs/renderer
Version:
Renderer for AwayJS
30 lines • 1.29 kB
TypeScript
import { Stage, ShaderRegisterCache, ShaderRegisterData } from '@awayjs/stage';
import { AssetBase, IAbstraction, IAbstractionPool, IAsset } from '@awayjs/core';
import { ShaderBase } from './ShaderBase';
import { RendererBase } from '../RendererBase';
import { _Render_MaterialBase } from './_Render_MaterialBase';
/**
* @class away.pool.MaterialPoolBase
*/
export declare class _Render_ElementsBase extends AssetBase implements IAbstractionPool {
private _materialStore;
private _materialClassPool;
private _materials;
readonly stage: Stage;
readonly renderer: RendererBase;
/**
* //TODO
*
* @param materialClassGL
*/
constructor(renderer: RendererBase);
requestAbstraction(asset: IAsset): IAbstraction;
storeAbstraction(abstraction: IAbstraction): void;
addMaterial(material: _Render_MaterialBase): void;
removeMaterial(material: _Render_MaterialBase): void;
clear(): void;
_includeDependencies(shader: ShaderBase): void;
_getVertexCode(shader: ShaderBase, registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string;
_getFragmentCode(shader: ShaderBase, registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string;
}
//# sourceMappingURL=_Render_ElementsBase.d.ts.map