@bitowl/three-instanced-mesh
Version:
Scene graph level abstraction for three.js InstancedBufferGeometry
53 lines (52 loc) • 1.32 kB
JavaScript
// copy of https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib/meshmatcap_vert.glsl.js
module.exports = [
"#define MATCAP",
"",
"varying vec3 vViewPosition;",
"",
"#ifndef FLAT_SHADED",
"",
" varying vec3 vNormal;",
"",
"#endif",
"",
"#include <common>",
"#include <uv_pars_vertex>",
"#include <displacementmap_pars_vertex>",
"#include <fog_pars_vertex>",
"#include <morphtarget_pars_vertex>",
"#include <skinning_pars_vertex>",
"",
"#include <logdepthbuf_pars_vertex>",
"#include <clipping_planes_pars_vertex>",
"",
"void main() {",
"",
" #include <uv_vertex>",
" #include <color_vertex>",
" ",
" #include <beginnormal_vertex>",
" #include <morphnormal_vertex>",
" #include <skinbase_vertex>",
" #include <skinnormal_vertex>",
" #include <defaultnormal_vertex>",
"",
" #ifndef FLAT_SHADED // Normal computed with derivatives when FLAT_SHADED",
"",
" vNormal = normalize( transformedNormal );",
"",
" #endif",
"",
" #include <begin_vertex>",
" #include <morphtarget_vertex>",
" #include <skinning_vertex>",
" #include <displacementmap_vertex>",
" #include <project_vertex>",
"",
" #include <logdepthbuf_vertex>",
" #include <clipping_planes_vertex>",
" #include <fog_vertex>",
"",
" vViewPosition = - mvPosition.xyz;",
"",
"}"].join("\n");