UNPKG

@spearwolf/twopoint5d

Version:

a library to create 2.5d realtime graphics and pixelart with three.js

39 lines 1.97 kB
import { BufferGeometry, InstancedBufferGeometry } from 'three'; import { VOBufferPool } from './VOBufferPool.js'; import { VertexObjectDescriptor } from './VertexObjectDescriptor.js'; import { VertexObjectPool } from './VertexObjectPool.js'; import type { BufferLike, VertexAttributeUsageType, VertexObjectDescription } from './types.js'; type TouchBuffersType = { [Type in VertexAttributeUsageType]?: boolean; }; type TouchInstancedBuffersType = { base?: TouchBuffersType; instanced?: TouchBuffersType; }; export declare class InstancedVOBufferGeometry extends InstancedBufferGeometry { #private; readonly basePool?: VOBufferPool; readonly baseBuffers?: Map<string, BufferLike>; readonly baseBufferSerials: Map<string, number>; readonly instancedBufferSerials: Map<string, number>; readonly instancedPool: VOBufferPool; readonly instancedBuffers: Map<string, BufferLike>; readonly extraInstancedPools: Map<string, VOBufferPool>; readonly extraInstancedBuffers: Map<string, Map<string, BufferLike>>; readonly extraInstancedBufferSerials: Map<string, Map<string, number>>; constructor(...args: [VOBufferPool | VertexObjectDescriptor | VertexObjectDescription, number, BufferGeometry] | [ VOBufferPool | VertexObjectDescriptor | VertexObjectDescription, number, VOBufferPool | VertexObjectDescriptor | VertexObjectDescription, number? ]); attachInstancedPool(name: string, pool: VertexObjectPool<any> | VertexObjectDescriptor | VertexObjectDescription): VertexObjectPool<any>; detachInstancedPool(name: string): VOBufferPool | undefined; dispose(): void; touchAttributes(...attrNames: string[]): void; touchBuffers(bufferTypes: TouchInstancedBuffersType | TouchBuffersType): void; touch(...args: Array<string | TouchBuffersType | TouchInstancedBuffersType>): void; update(): void; } export {}; //# sourceMappingURL=InstancedVOBufferGeometry.d.ts.map