is a three-dimensional graphics directive specifying that surfaces that follow are to be drawn with a warm color facing toward the light and a cool color facing away.


uses cool and warm colors obtained by blending col with slate Blue and Orange.


uses the cool color ccol and the warm color wcol.


uses the colors ccol and wcol weighted by the wi.


uses the specified gradient color scheme in ColorData.


  • GoochShading is also known as cool to warm shading.
  • GoochShading is typically used to highlight details and contours of three-dimensional objects.
  • The final colors of 3D surfaces are determined by linearly adding RGB colors from the diffuse reflection, specular reflection lights.
  • GoochShading[{w1,w2}{ccol,wcol}] specifies that luminosity on the surface should be mapped to the color gradients between ccol and wcol weighted by w1 and w2. A higher weight wi indicates that more of the corresponding color should be used.
  • Colors can be defined by RGBColor, Hue or any other color specification. Any number of colors can be used.
  • GoochShading[] is effectively equivalent to GoochShading[{,,}].
  • In GoochShading[{ccol,wcol}], the colors ccol and wcol are weighted uniformly.
  • The setting Lighting"Accent" uses a directional light and faithfully reproduces colors on the surface.


open allclose all

Basic Examples  (4)

Apply Gooch shading to the unit sphere with a directional light:

Use a colored Gooch shading to show a knot:

Style a surface in a plot:

A sailing ship:

Scope  (13)

Basic Uses  (5)

Apply GoochShading to a graphics primitive:

Apply Gooch shading to a plot:

Apply Gooch shading to a chart:

Apply Gooch shading to a 3D object:

Summary box:

Specification  (5)

GoochShading with no arguments uses three gray tones:

Use colorized Gooch shading:

Use a custom color sequence:

Specify the weight of each color:

Use a predefined color scheme from ColorData:

Lighting  (3)

GoochShading works with all types of lights:

Use colored lights:

Use "Accent" lighting to faithfully reproduce colors on the surface.

Properties & Relations  (2)

Approximate the default system shader with GoochShading:

Approximate GoochShading with ToonShading:

Possible Issues  (2)

The default light scheme uses several colored light sources:

Use a single directional light to get the standard Gooch shading effect:

Surfaces are displayed in a darker color:

Automatically get a balanced three-tone color scheme:

Interactive Examples  (3)

Adjust the weights of the base colors:

Explore gradient color schemes from ColorData:

Explore indexed color schemes from ColorData:

Wolfram Research (2020), GoochShading, Wolfram Language function,


Wolfram Research (2020), GoochShading, Wolfram Language function,


Wolfram Language. 2020. "GoochShading." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2020). GoochShading. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_goochshading, author="Wolfram Research", title="{GoochShading}", year="2020", howpublished="\url{}", note=[Accessed: 29-May-2024 ]}


@online{reference.wolfram_2024_goochshading, organization={Wolfram Research}, title={GoochShading}, year={2020}, url={}, note=[Accessed: 29-May-2024 ]}