surfo

workaround for surface lighting with OpenGL

You are now following this Submission

There's a bug in the OpenGL renderer that produces faulty face lighting in surface plots, see picture above and http://www.mathworks.com/matlabcentral/newsreader/view_thread/249184 .
This submission contains a function that computes face normal data for the 'VertexNormals' property of the surface that fixes the lighting (facenorm.m) as well as a workaround function that you can just use in place of surf (surfo.m).

Only use this if you get erroneous surface plots and you can't go without OpenGL and flat lighting.

Cite As

Andres (2026). surfo (https://www.mathworks.com/matlabcentral/fileexchange/23882-surfo), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.2.0.0

v1.01 · code with improved speed as kindly suggested by Jan Simon · minor text changes

1.1.0.0

perform meshgrid within facenorm.m, if necessary

1.0.0.0