/** 3D point */ export type V3 = [number, number, number]; /** 2D point */ export type V2 = [number, number]; export interface SolubleAttribute { field: string; format: GPUVertexFormat; size: number; /** defaults to 4 for `float32` since 32=8*4, would change for other types */ unitSize?: number; } export interface SolubleObjectData { type: "object"; topology: GPUPrimitiveTopology; vertexBuffersDescriptors: Iterable; shaderModule: GPUShaderModule; vertexBuffers: GPUBuffer[]; length: number; indices?: GPUBuffer; }