Lighting Effects in Mathematica

First, lets define a time dependent surface plot with a color function that varies with the height.  In this case, we cycle through the hue spectrum.

gr[t_]:=Plot3D[Sin[x+Cos[x]-t]+Cos[y+Sin[y]-t],{x,0,4 π},{y,0,4 π},ImageSize->400,Mesh->False,ColorFunction->({Hue[.79 #3],Specularity[White,50]}&),PlotPoints->50,Background->Black,Boxed->False]

For stylistic reasons, the background color is set to black. We animate the surface by using a Table with the time variable varying over one complete cycle.

anim=Table[gr[t],{t,0,2 π,0.1}];

SetDirectory[NotebookDirectory[]];

Export["3dsurf.mp4",anim,VideoEncoding->"H264-MF"]