shaderLib top-level property

Map<String, dynamic> shaderLib
getter/setter pair

Implementation

Map<String, dynamic> shaderLib = {
  "basic": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["specularmap"],
      uniformsLib["envmap"],
      uniformsLib["aomap"],
      uniformsLib["lightmap"],
      uniformsLib["fog"]
    ]),
    "vertexShader": shaderChunk["meshbasic_vert"],
    "fragmentShader": shaderChunk["meshbasic_frag"]
  },
  "lambert": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["specularmap"],
      uniformsLib["envmap"],
      uniformsLib["aomap"],
      uniformsLib["lightmap"],
      uniformsLib["emissivemap"],
      uniformsLib["bumpmap"],
      uniformsLib["normalmap"],
      uniformsLib["displacementmap"],
      uniformsLib["fog"],
      uniformsLib["lights"],
      {
        "emissive": {"value": Color.fromHex32(0x000000)}
      }
    ]),
    "vertexShader": shaderChunk["meshlambert_vert"],
    "fragmentShader": shaderChunk["meshlambert_frag"]
  },
  "phong": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["specularmap"],
      uniformsLib["envmap"],
      uniformsLib["aomap"],
      uniformsLib["lightmap"],
      uniformsLib["emissivemap"],
      uniformsLib["bumpmap"],
      uniformsLib["normalmap"],
      uniformsLib["displacementmap"],
      uniformsLib["fog"],
      uniformsLib["lights"],
      {
        "emissive": {"value": Color.fromHex32(0x000000)},
        "specular": {"value": Color.fromHex32(0x111111)},
        "shininess": {"value": 30}
      }
    ]),
    "vertexShader": shaderChunk["meshphong_vert"],
    "fragmentShader": shaderChunk["meshphong_frag"]
  },
  "standard": shaderLibStandard,
  "toon": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["aomap"],
      uniformsLib["lightmap"],
      uniformsLib["emissivemap"],
      uniformsLib["bumpmap"],
      uniformsLib["normalmap"],
      uniformsLib["displacementmap"],
      uniformsLib["gradientmap"],
      uniformsLib["fog"],
      uniformsLib["lights"],
      {
        "emissive": {"value": Color.fromHex32(0x000000)}
      }
    ]),
    "vertexShader": shaderChunk["meshtoon_vert"],
    "fragmentShader": shaderChunk["meshtoon_frag"]
  },
  "matcap": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["bumpmap"],
      uniformsLib["normalmap"],
      uniformsLib["displacementmap"],
      uniformsLib["fog"],
      {
        "matcap": <String,dynamic>{"value": null}
      }
    ]),
    "vertexShader": shaderChunk["meshmatcap_vert"],
    "fragmentShader": shaderChunk["meshmatcap_frag"]
  },
  "points": {
    "uniforms": mergeUniforms([uniformsLib["points"], uniformsLib["fog"]]),
    "vertexShader": shaderChunk["points_vert"],
    "fragmentShader": shaderChunk["points_frag"]
  },
  "dashed": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["fog"],
      {
        "scale": {"value": 1},
        "dashSize": {"value": 1},
        "totalSize": {"value": 2}
      }
    ]),
    "vertexShader": shaderChunk["linedashed_vert"],
    "fragmentShader": shaderChunk["linedashed_frag"]
  },
  "depth": {
    "uniforms":
        mergeUniforms([uniformsLib["common"], uniformsLib["displacementmap"]]),
    "vertexShader": shaderChunk["depth_vert"],
    "fragmentShader": shaderChunk["depth_frag"]
  },
  "normal": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["bumpmap"],
      uniformsLib["normalmap"],
      uniformsLib["displacementmap"],
      {
        "opacity": {"value": 1.0}
      }
    ]),
    "vertexShader": shaderChunk["meshnormal_vert"],
    "fragmentShader": shaderChunk["meshnormal_frag"]
  },
  "sprite": {
    "uniforms": mergeUniforms([uniformsLib["sprite"], uniformsLib["fog"]]),
    "vertexShader": shaderChunk["sprite_vert"],
    "fragmentShader": shaderChunk["sprite_frag"]
  },
  "background": {
    "uniforms": {
      "uvTransform": {"value": Matrix3.identity()},
      "t2D": <String,dynamic>{"value": null},
      'backgroundIntensity': { 'value': 1 }
    },
    "vertexShader": shaderChunk["background_vert"],
    "fragmentShader": shaderChunk["background_frag"]
  },
	'backgroundCube': {

		'uniforms': {
			'envMap': <String,dynamic>{ 'value': null },
			'flipEnvMap': { 'value': - 1 },
			'backgroundBlurriness': { 'value': 0 },
			'backgroundIntensity': { 'value': 1 },
			'backgroundRotation': { 'value': Matrix3.identity() }
		},

		'vertexShader': shaderChunk['backgroundCube_vert'],
		'fragmentShader': shaderChunk['backgroundCube_frag']
	},
  /* -------------------------------------------------------------------------
	//	Cube map shader
	 ------------------------------------------------------------------------- */

  "cube": {
		'uniforms': {
			'tCube': <String,dynamic>{ 'value': null },
			'tFlip': { 'value': - 1 },
			'opacity': { 'value': 1.0 },
		},
    "vertexShader": shaderChunk["cube_vert"],
    "fragmentShader": shaderChunk["cube_frag"]
  },
  "equirect": {
    "uniforms": {
      "tEquirect": <String,dynamic>{"value": null},
    },
    "vertexShader": shaderChunk["equirect_vert"],
    "fragmentShader": shaderChunk["equirect_frag"]
  },
  "distanceRGBA": {
    "uniforms": mergeUniforms([
      uniformsLib["common"],
      uniformsLib["displacementmap"],
      {
        "referencePosition": {"value": Vector3.zero()},
        "nearDistance": {"value": 1},
        "farDistance": {"value": 1000}
      }
    ]),
    "vertexShader": shaderChunk["distanceRGBA_vert"],
    "fragmentShader": shaderChunk["distanceRGBA_frag"]
  },
  "shadow": {
    "uniforms": mergeUniforms([
      uniformsLib["lights"],
      uniformsLib["fog"],
      {
        "color": {"value": Color.fromHex32(0x000000)},
        "opacity": {"value": 1.0}
      },
    ]),
    "vertexShader": shaderChunk["shadow_vert"],
    "fragmentShader": shaderChunk["shadow_frag"]
  },
  "physical": {
    "uniforms": mergeUniforms([
      shaderLibStandard["uniforms"],
      {
        'clearcoat': { 'value': 0 },
        'clearcoatMap': <String,dynamic>{ 'value': null },
        'clearcoatMapTransform': { 'value': Matrix3.identity() },
        'clearcoatNormalMap': <String,dynamic>{ 'value': null },
        'clearcoatNormalMapTransform': { 'value': Matrix3.identity() },
        'clearcoatNormalScale': { 'value': Vector2( 1, 1 ) },
        'clearcoatRoughness': { 'value': 0 },
        'clearcoatRoughnessMap': <String,dynamic>{ 'value': null },
        'clearcoatRoughnessMapTransform': { 'value': Matrix3.identity() },
        'dispersion': { 'value': 0 },
        'iridescence': { 'value': 0 },
        'iridescenceMap': <String,dynamic>{ 'value': null },
        'iridescenceMapTransform': { 'value': Matrix3.identity() },
        'iridescenceIOR': { 'value': 1.3 },
        'iridescenceThicknessMinimum': { 'value': 100 },
        'iridescenceThicknessMaximum': { 'value': 400 },
        'iridescenceThicknessMap': <String,dynamic>{ 'value': null },
        'iridescenceThicknessMapTransform': { 'value': Matrix3.identity() },
        'sheen': { 'value': 0 },
        'sheenColor': { 'value': Color( 0x000000 ) },
        'sheenColorMap': <String,dynamic>{ 'value': null },
        'sheenColorMapTransform': { 'value': Matrix3.identity() },
        'sheenRoughness': { 'value': 1 },
        'sheenRoughnessMap': <String,dynamic>{ 'value': null },
        'sheenRoughnessMapTransform': { 'value': Matrix3.identity() },
        'transmission': { 'value': 0 },
        'transmissionMap': <String,dynamic>{ 'value': null },
        'transmissionMapTransform': { 'value': Matrix3.identity() },
        'transmissionSamplerSize': { 'value': Vector2() },
        'transmissionSamplerMap': <String,dynamic>{ 'value': null },
        'thickness': { 'value': 0 },
        'thicknessMap': <String,dynamic>{ 'value': null },
        'thicknessMapTransform': { 'value': Matrix3.identity() },
        'attenuationDistance': { 'value': 0 },
        'attenuationColor': { 'value': Color( 0x000000 ) },
        'specularColor': { 'value': Color( 1, 1, 1 ) },
        'specularColorMap': <String,dynamic>{ 'value': null },
        'specularColorMapTransform': { 'value': Matrix3.identity() },
        'specularIntensity': { 'value': 1 },
        'specularIntensityMap': <String,dynamic>{ 'value': null },
        'specularIntensityMapTransform': { 'value': Matrix3.identity() },
        'anisotropyVector': { 'value': Vector2() },
        'anisotropyMap': <String,dynamic>{ 'value': null },
        'anisotropyMapTransform': { 'value': Matrix3.identity() },
      }
    ]),
    "vertexShader": shaderChunk["meshphysical_vert"],
    "fragmentShader": shaderChunk["meshphysical_frag"]
  }
};