anchor.diff:  jMonkeyEngine supports illuminated and unshaded Material Definitions.
   
   *  Phong Illuminated materials look more naturalistic.
  -*  Unshaded materials look more abstract. 
  -
  -“Unshaded materials look somewhat abstract because they ignore lighting and shading. Unshaded Materials work even if the scene does not include a light source. These Materials can be single-colored or textured. For example, they are used for cards and tiles, for the sky, billboards and UI elements, for toon-style games, or for testing.
  -
  -[cols="20,40,40", options="header"]
  +*  Unshaded materials look more abstract.
  +
  +"`Unshaded`" materials look somewhat abstract because they ignore lighting and shading. Unshaded Materials work even if the scene does not include a light source. These Materials can be single-colored or textured. For example, they are used for cards and tiles, for the sky, billboards and UI elements, for toon-style games, or for testing.
  +
  +[cols="20,35,45", options="header"]
   .Standard Unshaded
   |===
   
  -a| Material Definition 
  -a| Usage 
  -<a| Material Parameters  
  +a| Material Definition
  +a| Usage
  +<a| Material Parameters
   
   a| Common/MatDefs/Misc/ +
  -Unshaded.j3md 
  +Unshaded.j3md
   a| Standard, non-illuminated Materials. +
   Use this for simple coloring and texturing, glow, and transparency. +
  -See also: <<jme3/beginner/hello_material#,Hello Material>> 
  +See also: <<jme3/beginner/hello_material#,Hello Material>>
   a| *Texture Maps* +
  -setTexture(“ColorMap, assetManager.loadTexture(“)); +
  -setBoolean(“SeparateTexCoord,true); +
  -setTexture(“LightMap, assetManager.loadTexture(“)); +
  +setTexture("`ColorMap`", assetManager.loadTexture("`name`")); +
  +setBoolean("`SeparateTexCoord`",true); +
  +setTexture("`LightMap`", assetManager.loadTexture("`name`")); +
   *Colors* +
  -setColor(“Color, ColorRGBA.White); +
  -setBoolean(“VertexColor,true); +
  +setColor("`Color`", ColorRGBA.White); +
  +setBoolean("`VertexColor`",true); +
   *Glow* +
  -setTexture(“GlowMap, assetManager.loadTexture(“)); +
  -setColor(“GlowColor, ColorRGBA.White); 
  +setTexture("`GlowMap`", assetManager.loadTexture("`name`")); +
  +setColor("`GlowColor`", ColorRGBA.White);
   
   |===
   
   Other useful, but less commonly used material definitions:
   
  -[cols="20,40,40", options="header"]
  +[cols="20,35,45", options="header"]
   .Special Unshaded
   |===
   
  -a| Material Definition 
  -a| Usage 
  -<a| Material Parameters  
  +a| Material Definition
  +a| Usage
  +<a| Material Parameters
   
   <a| Common/MatDefs/Misc/ +
  -Sky.j3md            
  +Sky.j3md
   a| A solid skyblue, or use with a custom SkyDome texture. +
  -See also: <<jme3/advanced/sky#,Sky>> 
  -a| setTexture(“TextureCubeMap, assetManager.loadTexture(“)); +
  -setBoolean(“SphereMap,true); +
  -setVector3(“NormalScale, new Vector3f(0,0,0)); 
  +See also: <<jme3/advanced/sky#,Sky>>
  +a| setTexture("`TextureCubeMap`", assetManager.loadTexture("`name`")); +
  +setBoolean("`SphereMap`",true); +
  +setVector3("`NormalScale`", new Vector3f(0,0,0));
   
   a| Common/MatDefs/Terrain/ +
  -Terrain.j3md 
  +Terrain.j3md
   a| Splat textures for e.g. terrains. +
  -See also: <<jme3/beginner/hello_terrain#,Hello Terrain>> 
  -a| setTexture(“Tex1, assetManager.loadTexture(“)); +
  +See also: <<jme3/beginner/hello_terrain#,Hello Terrain>>
  +a| setTexture("`Tex1`", assetManager.loadTexture("`name`")); +
   (red) +
  -setFloat(“Tex1Scale,1f); +
  -setTexture(“Tex2, assetManager.loadTexture(“)); +
  +setFloat("`Tex1Scale`",1f); +
  +setTexture("`Tex2`", assetManager.loadTexture("`name`")); +
   (green) +
  -setFloat(“Tex2Scale,1f); +
  -setTexture(“Tex3, assetManager.loadTexture(“)); +
  +setFloat("`Tex2Scale`",1f); +
  +setTexture("`Tex3`", assetManager.loadTexture("`name`")); +
   (blue) +
  -setFloat(“Tex3Scale,1f); +
  -setTexture(“Alpha, assetManager.loadTexture(“)); 
  +setFloat("`Tex3Scale`",1f); +
  +setTexture("`Alpha`", assetManager.loadTexture("`name`"));
   
   a|Common/MatDefs/Terrain/ +
   HeightBasedTerrain.j3md
  
positive.code: For example, you can use a maximum of 9 diffuse textures, two of which can have normal maps; +
  or, five textures with both diffuse and normal maps.
  a|*Texture Splat Maps* +
  setTexture(“DiffuseMap, assetManager.loadTexture(“)); +
  setFloat(“DiffuseMap_0_scale,1f); +
  setTexture(“NormalMap, assetManager.loadTexture(“)); +
  setTexture(“DiffuseMap_1, assetManager.loadTexture(“)); +
  setFloat(“DiffuseMap_1_scale,1f); +
  setTexture(“NormalMap_1, assetManager.loadTexture(“)); +
  setTexture(“DiffuseMap_2, assetManager.loadTexture(“)); +
  setFloat(“DiffuseMap_2_scale,1f); +
  setTexture(“NormalMap_2, assetManager.loadTexture(“)); +
  setTexture(“DiffuseMap_3, assetManager.loadTexture(“)); +
  setFloat(“DiffuseMap_3_scale,1f); +
  setTexture(“NormalMap_3, assetManager.loadTexture(“)); +
  etc, up to 11. +
  *Alpha Maps* +
  setTexture(“AlphaMap, assetManager.loadTexture(“)); +
  setTexture(“AlphaMap_1, assetManager.loadTexture(“)); +
  setTexture(“AlphaMap_2, assetManager.loadTexture(“)); +
  *Glowing* +
  setTexture(“GlowMap, assetManager.loadTexture(“)); +
  setColor(“GlowColor, ColorRGBA.White); +
  *Miscellaneous* +
  setColor(“Diffuse, ColorRGBA.White); +
  setColor(“Ambient, ColorRGBA.White); +
  setFloat(“Shininess,64f); +
  setColor(“Specular, ColorRGBA.White); +
  setTexture(“SpecularMap, assetManager.loadTexture(“)); +
  setBoolean(“WardIso,true); +
  setBoolean(“useTriPlanarMapping,true); +
  setBoolean(“isTerrainGrid,true); 
  
  <a| Common/MatDefs/Light/ +
  Reflection.j3md    
  a| Reflective glass material with environment map (CubeMap/SphereMap). See also: link:http://code.google.com/p/jmonkeyengine/source/browse/trunk/engine/src/test/jme3test/texture/TestCubeMap.java[TestCubeMap.java] 
  a| setTexture(“Texture, assetManager.loadTexture(“)); +
  setBoolean(“SphereMap,true); 
  
  |===
  
  
negative.code: a sandy texture for the beaches, +
  a grassy texure for inland areas, +
  and a rocky texture for mountain tops.
  a| setFloat("`terrainSize`",512f); +
  setTexture("`region1ColorMap`", assetManager.loadTexture("`name`")); +
  setTexture("`region2ColorMap`", assetManager.loadTexture("`name`")); +
  setTexture("`region3ColorMap`", assetManager.loadTexture("`name`")); +
  setTexture("`region4ColorMap`", assetManager.loadTexture("`name`")); +
  setVector3("`region1`", new Vector3f(0,0,0)); +
  setVector3("`region2`", new Vector3f(0,0,0)); +
  setVector3("`region3`", new Vector3f(0,0,0)); +
  setVector3("`region4`", new Vector3f(0,0,0)); +
  *Settings for steep areas:* +
  setTexture("`slopeColorMap`", assetManager.loadTexture("`name`")); +
  setFloat("`slopeTileFactor`",1f);
  
  <a| Common/MatDefs/Misc/ +
  Particle.j3md
  a| Used with texture masks for particle effects, or for point sprites. +
  The Quadratic value scales the particle for perspective view (link:https://github.com/jMonkeyEngine/jmonkeyengine/blob/master/jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java[formula]). +
  Does support an optional colored glow effect. +
  See also: <<jme3/beginner/hello_effects#,Hello Effects>>
  a| setTexture("`Texture`", assetManager.loadTexture("`name`")); +
  setTexture("`GlowMap`", assetManager.loadTexture("`name`")); +
  setColor("`GlowColor`", ColorRGBA.White); +
  setFloat("`Quadratic`",1f); +
  setBoolean("`PointSprite`",true);
  
  |===
  
  