import { ShaderModule } from "../../../lib/shader-module/shader-module.js"; import type { NumberArray3, NumberArray4 } from "../../../lib/utils/uniform-types.js"; /** * Props for the picking module, which depending on mode renders picking colors or highlighted item. * When active, renders picking colors, assumed to be rendered to off-screen "picking" buffer. * When inactive, renders normal colors, with the exception of selected object which is rendered with highlight */ export type PickingProps = { /** Are we picking? I.e. rendering picking colors? */ isActive?: boolean; /** Set to true when picking an attribute value instead of object index */ isAttribute?: boolean; /** Set to a picking color to visually highlight that item, or `null` to explicitly clear **/ highlightedObjectColor?: NumberArray3 | null; /** Color of visual highlight of "selected" item */ highlightColor?: NumberArray3 | NumberArray4; /** Color range 0-1 or 0-255 */ useFloatColors?: boolean; }; /** * Uniforms for the picking module, which renders picking colors and highlighted item. * When active, renders picking colors, assumed to be rendered to off-screen "picking" buffer. * When inactive, renders normal colors, with the exception of selected object which is rendered with highlight */ export type PickingUniforms = { /** * When true, renders picking colors. Set when rendering to off-screen "picking" buffer. * When false, renders normal colors, with the exception of selected object which is rendered with highlight */ isActive?: boolean; /** Set to true when picking an attribute value instead of object index */ isAttribute?: boolean; /** Color range 0-1 or 0-255 */ useFloatColors?: boolean; /** Do we have a highlighted item? */ isHighlightActive?: boolean; /** Set to a picking color to visually highlight that item */ highlightedObjectColor?: NumberArray3; /** Color of visual highlight of "selected" item */ highlightColor?: NumberArray4; }; /** * Provides support for color-coding-based picking and highlighting. * In particular, supports picking a specific instance in an instanced * draw call and highlighting an instance based on its picking color, * and correspondingly, supports picking and highlighting groups of * primitives with the same picking color in non-instanced draw-calls */ export declare const picking: ShaderModule; //# sourceMappingURL=picking.d.ts.map