|
@@ -0,0 +1,75 @@
|
|
|
+#define STANDARD
|
|
|
+#define PHYSICAL
|
|
|
+
|
|
|
+uniform vec3 diffuse;
|
|
|
+uniform vec3 emissive;
|
|
|
+uniform float roughness;
|
|
|
+uniform float metalness;
|
|
|
+uniform float opacity;
|
|
|
+
|
|
|
+uniform float envMapIntensity; // temporary
|
|
|
+
|
|
|
+varying vec3 vViewPosition;
|
|
|
+
|
|
|
+#ifndef FLAT_SHADED
|
|
|
+
|
|
|
+ varying vec3 vNormal;
|
|
|
+
|
|
|
+#endif
|
|
|
+
|
|
|
+#include <common>
|
|
|
+#include <color_pars_fragment>
|
|
|
+#include <uv_pars_fragment>
|
|
|
+#include <uv2_pars_fragment>
|
|
|
+#include <map_pars_fragment>
|
|
|
+#include <alphamap_pars_fragment>
|
|
|
+#include <aomap_pars_fragment>
|
|
|
+#include <lightmap_pars_fragment>
|
|
|
+#include <emissivemap_pars_fragment>
|
|
|
+#include <envmap_pars_fragment>
|
|
|
+#include <fog_pars_fragment>
|
|
|
+#include <bsdfs>
|
|
|
+#include <cube_uv_reflection_fragment>
|
|
|
+#include <lights_pars>
|
|
|
+#include <lights_physical_pars_fragment>
|
|
|
+#include <shadowmap_pars_fragment>
|
|
|
+#include <bumpmap_pars_fragment>
|
|
|
+#include <normalmap_pars_fragment>
|
|
|
+#include <roughnessmap_pars_fragment>
|
|
|
+#include <metalnessmap_pars_fragment>
|
|
|
+#include <logdepthbuf_pars_fragment>
|
|
|
+
|
|
|
+void main() {
|
|
|
+
|
|
|
+ vec4 diffuseColor = vec4( diffuse, opacity );
|
|
|
+ ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
|
|
|
+ vec3 totalEmissiveRadiance = emissive;
|
|
|
+
|
|
|
+ #include <logdepthbuf_fragment>
|
|
|
+ #include <map_fragment>
|
|
|
+ #include <color_fragment>
|
|
|
+ #include <alphamap_fragment>
|
|
|
+ #include <alphatest_fragment>
|
|
|
+ #include <specularmap_fragment>
|
|
|
+ #include <roughnessmap_fragment>
|
|
|
+ #include <metalnessmap_fragment>
|
|
|
+ #include <normal_fragment>
|
|
|
+ #include <emissivemap_fragment>
|
|
|
+
|
|
|
+ // accumulation
|
|
|
+ #include <lights_physical_fragment>
|
|
|
+ #include <lights_template>
|
|
|
+
|
|
|
+ // modulation
|
|
|
+ #include <aomap_fragment>
|
|
|
+
|
|
|
+ vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;
|
|
|
+
|
|
|
+ gl_FragColor = vec4( outgoingLight, diffuseColor.a );
|
|
|
+
|
|
|
+ #include <premultiplied_alpha_fragment>
|
|
|
+ #include <tonemapping_fragment>
|
|
|
+ #include <encodings_fragment>
|
|
|
+ #include <fog_fragment>
|
|
|
+
|
|
|
+}
|