@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 1.42 kB
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{isColorEmission as r}from"../core/shaderLibrary/ShaderOutput.js";import{OITPass as e}from"./OITPass.js";import{BlendFactor as n,CompareFunction as t,ColorAttachment as o}from"../../../webgl/enums.js";import{separateBlendingParams as u,premultipliedAlphaToPremultipliedAlpha as s,defaultDepthWrite as c}from"../../../webgl/renderState.js";const O=u(n.ONE,n.ZERO,n.ONE,n.ONE_MINUS_SRC_ALPHA);function T(r){return r===e.FrontFace?null:O}function a(r){switch(r){case e.NONE:return s;case e.ColorAlpha:return O;case e.FrontFace:case e.COUNT:return null}}function l(r){if(r.draped)return null;switch(r.oitPass){case e.NONE:case e.FrontFace:return r.writeDepth?c:null;case e.ColorAlpha:case e.COUNT:return null}}const A=5e5,C={factor:-1,units:-2};function N(r){return r?C:null}function f(r,n=t.LESS){return r===e.NONE||r===e.FrontFace?n:t.LEQUAL}function i(n,t){const u=r(t);return n===e.ColorAlpha?u?{buffers:[o.COLOR_ATTACHMENT0,o.COLOR_ATTACHMENT1,o.COLOR_ATTACHMENT2]}:{buffers:[o.COLOR_ATTACHMENT0,o.COLOR_ATTACHMENT1]}:u?{buffers:[o.COLOR_ATTACHMENT0,o.COLOR_ATTACHMENT1]}:null}export{C as OITPolygonOffset,A as OITPolygonOffsetLimit,a as blending,O as blendingColorAlpha,l as depthWrite,i as getDrawBuffers,N as getOITPolygonOffset,T as oitBlending,f as oitDepthTest};