UNPKG

@itwin/core-frontend

Version:
18 lines 1.7 kB
/** @packageDocumentation * @module WebGL */ import { ProgramBuilder } from "../ShaderBuilder"; import { IsAnimated, IsClassified, IsInstanced, IsThematic, PositionType, TechniqueFlags } from "../TechniqueFlags"; /** @internal */ export declare function createSurfaceHiliter(instanced: IsInstanced, classified: IsClassified, posType: PositionType): ProgramBuilder; /** @internal */ export declare const octDecodeNormal = "\nvec3 octDecodeNormal(vec2 e) {\n e = e / 255.0 * 2.0 - 1.0;\n vec3 n = vec3(e.x, e.y, 1.0 - abs(e.x) - abs(e.y));\n if (n.z < 0.0) {\n vec2 signNotZero = vec2(n.x >= 0.0 ? 1.0 : -1.0, n.y >= 0.0 ? 1.0 : -1.0);\n n.xy = (1.0 - abs(n.yx)) * signNotZero;\n }\n\n return normalize(n);\n}\n"; /** @internal */ export declare function addSurfaceFlags(builder: ProgramBuilder, withFeatureOverrides: boolean, withFeatureColor: boolean): void; /** @internal */ export declare function addTexture(builder: ProgramBuilder, animated: IsAnimated, isThematic: IsThematic, isPointCloud: boolean, isHilite: boolean, isMaplayer: boolean): void; export declare const discardClassifiedByAlpha = "\n if (u_no_classifier_discard)\n return false;\n\n bool hasAlpha = alpha <= s_maxAlpha;\n bool isOpaquePass = (kRenderPass_OpaqueLinear <= u_renderPass && kRenderPass_OpaqueGeneral >= u_renderPass);\n bool isTranslucentPass = kRenderPass_Translucent == u_renderPass;\n return (isOpaquePass && hasAlpha) || (isTranslucentPass && !hasAlpha);\n"; /** @internal */ export declare function createSurfaceBuilder(flags: TechniqueFlags): ProgramBuilder; export declare function addClassificationTranslucencyDiscard(builder: ProgramBuilder): void; //# sourceMappingURL=Surface.d.ts.map