UNPKG

@spearwolf/twopoint5d

Version:

Create 2.5D realtime graphics and pixelart with WebGL and three.js

56 lines 2.33 kB
import { type EventizedObject } from '@spearwolf/eventize'; import { Color, type Node, RenderTarget, type RenderPipeline, type WebGPURenderer } from 'three/webgpu'; import type { IPassProvider } from './IPassProvider.js'; import type { IRenderable } from './IRenderable.js'; import type { IStage } from './IStage.js'; import type { IStageRendererHost } from './IStageRendererHost.js'; export type StageRendererBuildOutputNode = (stagePasses: Node[]) => Node; export type StageRendererParentType = IStageRendererHost | StageRenderer; interface StageItem { stage: IStage & IRenderable; width: number; height: number; } export interface StageRenderer extends EventizedObject { } export declare class StageRenderer implements IStage, IRenderable, IPassProvider { #private; name: string; width: number; height: number; clear: boolean; get clearColor(): Color | null; set clearColor(color: Color | null | undefined); clearAlpha: number; clearColorBuffer: boolean; clearDepthBuffer: boolean; clearStencilBuffer: boolean; setClearColor(color: Color | null, alpha?: number): this; readonly stages: StageItem[]; set renderOrder(order: string | undefined); protected onRenderOrderChanged(): void; get renderOrder(): string; get renderOrderArray(): string[]; get parent(): StageRendererParentType | undefined; set parent(parent: StageRendererParentType | undefined); constructor(parent?: StageRendererParentType); attach(parent: StageRendererParentType): this; detach(): this; resize(width: number, height: number): void; protected resizeStage(stageItem: StageItem, width: number, height: number): void; updateFrame(now: number, deltaTime: number, frameNo: number): void; pipeline?: RenderPipeline; outputRenderTarget?: RenderTarget; buildOutputNode?: StageRendererBuildOutputNode; invalidateOutputNode(): void; renderTo(renderer: WebGPURenderer): void; asPassNode(renderer: WebGPURenderer): Node; dispose(): void; protected renderStage(stageItem: StageItem, renderer: WebGPURenderer): void; get orderedStages(): StageItem[]; hasStage(stage: IStage): boolean; add(stage: IStage & IRenderable): this; remove(stage: IStage): this; } export {}; //# sourceMappingURL=StageRenderer.d.ts.map