@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 1.33 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{ShaderOutput as r}from"../core/shaderLibrary/ShaderOutput.js";import{WaterDistortionPassParameters as e}from"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{OITPass as o}from"../lib/OITPass.js";import{blending as a,oitDepthTest as n,depthWrite as i,getDrawBuffers as l,getOITPolygonOffset as d}from"../lib/OrderIndependentTransparency.js";import{W as p}from"../../../../chunks/WaterSurface.glsl.js";import{makePipelineState as c,defaultColorWrite as u}from"../../../webgl/renderState.js";class m extends e{}class f extends s{constructor(r,e){super(r,e,new t(p,(()=>import("../shaders/WaterSurface.glsl.js"))))}initializePipeline(e){const{oitPass:t,output:s,transparent:p,draped:m,enableOffset:f}=e,h=t===o.NONE,j=t===o.FrontFace;return c({blending:s!==r.Normal&&s!==r.Highlight&&s!==r.ObjectAndLayerIdColor&&p?a(t):null,depthTest:m?null:{func:n(t)},depthWrite:i(e),drawBuffers:l(t,s),colorWrite:u,polygonOffset:h||j?null:d(f)})}}export{m as WaterMaterialPassParameters,f as WaterTechnique};