@luma.gl/core
Version:
The luma.gl core Device API
20 lines • 1.04 kB
TypeScript
import type { Bindings, BindingsByGroup } from "../adapter/types/shader-layout.js";
import type { Device } from "../adapter/device.js";
import type { ComputePipeline } from "../adapter/resources/compute-pipeline.js";
import type { RenderPipeline } from "../adapter/resources/render-pipeline.js";
type AnyPipeline = RenderPipeline | ComputePipeline;
type BindGroupCacheKeys = Partial<Record<number, object>>;
type BindGroupMap = Partial<Record<number, unknown>>;
export declare class BindGroupFactory {
readonly device: Device;
private readonly _layoutCacheByPipeline;
private readonly _bindGroupCacheByLayout;
constructor(device: Device);
getBindGroups(pipeline: AnyPipeline, bindings?: Bindings | BindingsByGroup, bindGroupCacheKeys?: BindGroupCacheKeys): BindGroupMap;
private _getBindGroupLayout;
private _getEmptyBindGroup;
private _getLayoutBindGroupCache;
}
export declare function _getDefaultBindGroupFactory(device: Device): BindGroupFactory;
export {};
//# sourceMappingURL=bind-group-factory.d.ts.map