@animech-public/playcanvas
Version:
PlayCanvas WebGL game engine
2 lines (1 loc) • 1.4 kB
JavaScript
import{GAMMA_SRGB as n,GAMMA_SRGBFAST as e,GAMMA_SRGBHDR as a,TONEMAP_NEUTRAL as t,TONEMAP_ACES2 as o,TONEMAP_ACES as i,TONEMAP_HEJL as m,TONEMAP_LINEAR as p,TONEMAP_FILMIC as r}from"../../constants.js";import{shaderChunks as g}from"../chunks/chunks.js";class S{static begin(){return"void main(void)\n{\n"}static end(){return"}\n"}static skinCode(n,e=g){return n.supportsBoneTextures?e.skinTexVS:`#define BONE_LIMIT ${n.getBoneLimit()}\n${e.skinConstVS}`}static fogCode(n,e=g){return"linear"===n?e.fogLinearPS?e.fogLinearPS:g.fogLinearPS:"exp"===n?e.fogExpPS?e.fogExpPS:g.fogExpPS:"exp2"===n?e.fogExp2PS?e.fogExp2PS:g.fogExp2PS:e.fogNonePS?e.fogNonePS:g.fogNonePS}static gammaCode(t,o=g){return t===n||t===e?o.gamma2_2PS?o.gamma2_2PS:g.gamma2_2PS:t===a?`#define HDR\n${o.gamma2_2PS?o.gamma2_2PS:g.gamma2_2PS}`:o.gamma1_0PS?o.gamma1_0PS:g.gamma1_0PS}static tonemapCode(n,e=g){var a,S,P,s,u,c,l;switch(n){case r:return null!=(a=e.tonemappingFilmicPS)?a:g.tonemappingFilmicPS;case p:return null!=(S=e.tonemappingLinearPS)?S:g.tonemappingLinearPS;case m:return null!=(P=e.tonemappingHejlPS)?P:g.tonemappingHejlPS;case i:return null!=(s=e.tonemappingAcesPS)?s:g.tonemappingAcesPS;case o:return null!=(u=e.tonemappingAces2PS)?u:g.tonemappingAces2PS;case t:return null!=(c=e.tonemappingNeutralPS)?c:g.tonemappingNeutralPS}return null!=(l=e.tonemapingNonePS)?l:g.tonemappingNonePS}}export{S as ShaderGenerator};