@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
37 lines (36 loc) • 1.94 kB
TypeScript
import { Object3D } from 'three';
import { AbstractRenderer } from '../../engine/viewers/Common';
import { CoreParticlesGpuComputeController } from './CoreParticlesGpuComputeController';
import { CoreParticlesRenderController } from './CoreParticlesRenderController';
import type { PolyScene } from '../../engine/scene/PolyScene';
import { ShaderName } from '../../engine/nodes/utils/shaders/ShaderName';
import { ParticlesSystemGpuSopNode } from '../../engine/nodes/sop/ParticlesSystemGpu';
import { TextureAllocationsController } from '../../engine/nodes/gl/code/utils/TextureAllocationsController';
import { GPUComputationConfigRef } from './gpuCompute/GPUComputationRenderer';
export declare class CoreParticlesController {
readonly scene: PolyScene;
private _node;
readonly gpuController: CoreParticlesGpuComputeController;
readonly renderController: CoreParticlesRenderController;
private _shadersByName;
private _shaderNames;
private _uniformNames;
protected _object: Object3D | undefined;
protected _renderer: AbstractRenderer | undefined;
constructor(scene: PolyScene, _node: ParticlesSystemGpuSopNode);
object(): Object3D<import("three").Object3DEventMap> | undefined;
renderer(): AbstractRenderer | undefined;
dispose(): void;
init(object: Object3D, renderer: AbstractRenderer): Promise<GPUComputationConfigRef | undefined>;
stepSimulation(delta: number, configRef: GPUComputationConfigRef): void;
reset(): Promise<GPUComputationConfigRef | undefined>;
setError(message: string): void;
node(): ParticlesSystemGpuSopNode;
setShadersByName(shadersByName: Map<ShaderName, string>): void;
shadersByName(): Map<ShaderName, string>;
shaderNames(): ShaderName[];
uniformNames(): string[];
setPersistedTextureAllocationController(controller: TextureAllocationsController): void;
private _debugCook;
debugMessage(message: string): void;
}