UNPKG

@tolokoban/tgd

Version:

ToloGameDev library for WebGL2

36 lines 1.29 kB
import { TgdBuffer } from "../buffer"; import type { TgdDataset } from "../dataset"; import type { TgdProgram } from "../program"; import type { TgdTypeArrayForElements } from "../types"; export declare class TgdVertexArray { readonly gl: WebGL2RenderingContext; private readonly program?; private readonly datasets?; private elements?; readonly vao: WebGLVertexArrayObject; private readonly drawBuffers; private readonly elemBuffer; private readonly buffersToDelete; /** * Number of owners that share this VAO. */ private ownersCount; constructor(gl: WebGL2RenderingContext, program?: TgdProgram | undefined, datasets?: Readonly<TgdDataset>[] | undefined, elements?: TgdTypeArrayForElements | undefined); share(): void; /** * When you change the data of a dataset, * you must call this function to update the VAO. * Because datasets do not own any buffer. */ updateDataset(dataset: TgdDataset): boolean; updateElements(elements: number[]): void; getBuffer(index: number): TgdBuffer | undefined; toCode({ indent }?: Partial<{ indent: string; }>): string; debug(caption?: string): void; bind(): void; unbind(): void; delete(): void; } //# sourceMappingURL=vao.d.ts.map