/*! * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. */ import { vec3 } from "gl-matrix"; import { ShaderBase } from "./shader.js"; import { HighlightMode } from "../../../main.js"; export declare abstract class UnitShader extends ShaderBase { protected _instanceBuffer: WebGLBuffer; protected _previousInstanceBuffer: WebGLBuffer; protected _areBuffersInitialized: boolean; protected _fromOrderUniform: WebGLUniformLocation; protected _toOrderUniform: WebGLUniformLocation; protected _timeUniform: WebGLUniformLocation; protected _durationUniform: WebGLUniformLocation; protected _paletteVUniform: WebGLUniformLocation; protected _paletteDivisionsUniform: WebGLUniformLocation; protected _previousPaletteVUniform: WebGLUniformLocation; protected _previousPaletteDivisionsUniform: WebGLUniformLocation; protected _sampler0Uniform: WebGLUniformLocation; protected _previousSampler0Uniform: WebGLUniformLocation; protected _sampler1Uniform: WebGLUniformLocation; protected _previousSampler1Uniform: WebGLUniformLocation; protected _pickUniform: WebGLUniformLocation; protected _hoverUniform: WebGLUniformLocation; protected _activeUniform: WebGLUniformLocation; protected _directionToLightUniform: WebGLUniformLocation; protected _ambientUniform: WebGLUniformLocation; protected _halfAngleUniform: WebGLUniformLocation; protected _specularPowerUniform: WebGLUniformLocation; protected _specularIntensityUniform: WebGLUniformLocation; protected _hoverColorUniform: WebGLUniformLocation; protected _activeColorUniform: WebGLUniformLocation; protected _selectedColorUniform: WebGLUniformLocation; protected _highlightModeUniform: WebGLUniformLocation; protected _rMatrixUniform: WebGLUniformLocation; protected _sdfBackgroundColorUniform: WebGLUniformLocation; protected _sdfBufferUniform: WebGLUniformLocation; protected _positionAttribute: number; protected _idAttribute: number; protected _idColorAttribute: number; protected _translationAttribute: number; protected _previousTranslationAttribute: number; protected _scaleAttribute: number; protected _previousScaleAttribute: number; protected _colorAttribute: number; protected _previousColorAttribute: number; protected _selectedAttribute: number; protected _previousSelectedAttribute: number; protected _orderAttribute: number; protected _rotationAttribute: number; protected _previousRotationAttribute: number; protected _texCoordAttribute: number; protected _previousTexCoordAttribute: number; protected _paletteTexture: WebGLTexture; protected _previousPaletteTexture: WebGLTexture; protected _sdfTexture: WebGLTexture; protected _previousSdfTexture: WebGLTexture; indexCount: number; directionToLight: vec3; halfAngle: vec3; specularPower: number; specularIntensity: number; ambient: number; time: number; duration: number; rangeMin: number; rangeMax: number; hover: number; active: number; selectedColor: vec3; hoverColor: vec3; activeColor: vec3; highlightMode: HighlightMode; sdfBuffer: number; sdfBackgroundColor: vec3; get paletteTexture(): WebGLTexture; set paletteTexture(value: WebGLTexture); get previousPaletteTexture(): WebGLTexture; set previousPaletteTexture(value: WebGLTexture); get sdfTexture(): WebGLTexture; set sdfTexture(value: WebGLTexture); get previousSdfTexture(): WebGLTexture; set previousSdfTexture(value: WebGLTexture); set instanceBuffer(value: WebGLBuffer); set previousInstanceBuffer(value: WebGLBuffer); initializeData(): void; protected _initializeShader(gl: WebGLRenderingContext, vsSource: string, fsSource: string): void; updateBuffers(): void; protected _updateCurrentBuffer(): void; protected _updatePreviousBuffer(): void; apply(): void; applyView(): void; updateTextures(): void; disableProgram(): void; }