As of Version 6, SurfaceColor has been superseded by Specularity and Glow.


is a three-dimensional graphics directive which specifies that the surfaces which follow should act as diffuse reflectors of light with a color given by dcol.


specifies that a specular reflection component should be included, with a color given by scol.


specifies that the reflection should occur with specular exponent n.


specifies that a color gcol should be added as if there were an intrinsic glow in the polygon.


  • SurfaceColor directives give surface properties that determine the effect of simulated illumination on polygons and other surfaces.
  • SurfaceColor directives can appear inside FaceForm directives.
  • Explicit color directives such as RGBColor override previous SurfaceColor specifications, so that {,RGBColor[],Polygon[]} specifies an explicit color for a polygon, independent of lighting.
  • SurfaceColor[] will override previous explicit color directives, and specifies that subsequent surfaces should be colored using simulated illumination.
  • SurfaceColor[] is equivalent to SurfaceColor[GrayLevel[1],GrayLevel[0],GrayLevel[0]].
  • If no SurfaceColor directive is given, surface are assumed to be white diffuse reflectors of light, obeying Lambert's law of reflection, so that the intensity of reflected light is times the intensity of incident light, where is the angle between the direction of the incident light and the surface normal. When , there is no reflected light.
  • SurfaceColor[GrayLevel[a]] specifies that surfaces should act as diffuse reflectors, but with albedo a. The intensity of reflected light is therefore a times the intensity of the incident light, multiplied by , and is of the same color.
  • SurfaceColor[RGBColor[r,g,b]] specifies that the red, green, and blue components of the reflected light should be respectively r, g, and b times those of the incident light, multiplied by .
  • The second element in SurfaceColor[dcol,scol] specifies a specular reflection component. scol must be a GrayLevel, Hue, or RGBColor specification. The color components of scol give the fractions of each color component in the incident intensity, which are reflected in a specular way by the surface.
  • The parameter n gives the specular exponent. The intensity of specularly reflected light at angle from the mirrorreflection direction falls off like as increases. It is zero when .
  • For real materials, n is typically between about 1 and a few hundred. With a coarse polygonal mesh, however, values of n below 10 are usually most appropriate. The default value for n is 1.
  • Mathematica implements a version of the Phong lighting model, in which the intensity of reflected light is given schematically by .
  • The intensities of light from glow and diffuse and specular reflection are added linearly for each color component. The final color shown for a particular polygon is the sum of contributions from each light source, and from ambient light.
  • SurfaceColor does not apply to Line and Point objects.
Wolfram Research (1991), SurfaceColor, Wolfram Language function,


Wolfram Research (1991), SurfaceColor, Wolfram Language function,


Wolfram Language. 1991. "SurfaceColor." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (1991). SurfaceColor. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2021_surfacecolor, author="Wolfram Research", title="{SurfaceColor}", year="1991", howpublished="\url{}", note=[Accessed: 24-January-2022 ]}


@online{reference.wolfram_2021_surfacecolor, organization={Wolfram Research}, title={SurfaceColor}, year={1991}, url={}, note=[Accessed: 24-January-2022 ]}