@itwin/core-frontend
Version:
iTwin.js frontend components
27 lines • 1.18 kB
TypeScript
/** @packageDocumentation
* @module WebGL
*/
import { VariableType } from "./ShaderBuilder";
import { TechniqueId } from "./TechniqueId";
/**
* Describes the details of an attribute associated with an attribute name.
* @internal
*/
export interface AttributeDetails {
/** Index used by GPU for binding attribute location for the associated attribute name. */
location: number;
/** What type of variable used for binding the attribute location. */
type: VariableType;
}
/**
* A class with static methods which provide access to a global mapping between techniques and attribute details (location and variable type).
* These details are used when constructing shaders and when setting up buffers through implementations of the BuffersContainer abstract class.
* @internal
*/
export declare class AttributeMap {
private readonly _attrMaps;
constructor();
static findAttributeMap(techniqueId: TechniqueId | undefined, instanced: boolean): Map<string, AttributeDetails>;
static findAttribute(attributeName: string, techniqueId: TechniqueId | undefined, instanced: boolean): AttributeDetails | undefined;
}
//# sourceMappingURL=AttributeMap.d.ts.map