/*
All material copyright Esri, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
*/
import{__decorate as e}from"tslib";import{subclass as r}from"../../../../../core/accessorSupport/decorators.js";import{ReloadableShader as s}from"../../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as i}from"../../core/shaderTechnique/ShaderTechnique.js";import{a as o}from"../../../../../chunks/OITBlend.glsl.js";import{DrawBufferNone as t,ColorAttachment1 as n,ColorAttachment0 as m}from"../../../../webgl/enums.js";import{makePipelineState as l,defaultColorWrite as a,modulateDestination as c,unpremultipliedAlphaToPremultipliedAlpha as d}from"../../../../webgl/renderState.js";let f=class extends i{constructor(){super(...arguments),this.shader=new s(o,()=>import("./OITBlend.glsl.js"))}initializePipeline(e){return l({blending:e.dimEmissive?c:d,colorWrite:a,drawBuffers:e.dimEmissive?{buffers:[t,n]}:e.hasEmitters?{buffers:[m,n]}:{buffers:[m]}})}};f=e([r("esri.views.3d.webgl-engine.effects.transparency.OITBlendTechnique")],f);export{f as OITBlendTechnique};
