3d emulation with tikz

Here is an option using shade and the ball preset

enter image description here

\documentclass[tikz,margin=0.5cm]{standalone}
\begin{document}
\begin{tikzpicture}    
\pgfmathsetseed{3}
\shade [ball color=blue!70] plot [smooth cycle, samples=8,domain={1:8}]
     (\x*360/8+5*rnd:0.5cm+1cm*rnd);
\end{tikzpicture}
\end{document}

Some more examples

enter image description here

\documentclass[tikz,margin=0.5cm]{standalone}
\begin{document}
\begin{tikzpicture}
\pgfmathsetmacro{\S}{3}
\foreach \X in {1,...,3}{
  \foreach \Y in {1,...,3}{
     \begin{scope}[shift={(\S*\X,\S*\Y)}]
        \shade [ball color=blue!70] plot [smooth cycle, samples=8,domain={1:8}]
           (\x*360/8+5*rnd:0.5cm+1cm*rnd);
     \end{scope}
  }
}
\end{tikzpicture}
\end{document}

A very small addendum to Milo's great answer: sometimes you want the bright spot not to be where \shade[ball color=...]... puts it. You could either define your own shading, or, what is perhaps simpler, clip a circle with a shifted center against that shape. The following animation is supposed to give you an idea what's possible. In the end, you will have to decide on your own what looks realistic, or switch to asymptote, which computes realistic shadings for you.

\documentclass[tikz,margin=0.5cm]{standalone}
\begin{document}
\foreach \X in {1,2,...,42}
{\begin{tikzpicture}    
\pgfmathsetseed{\X}
\path[use as bounding box] (-4,-4) rectangle (4,4);
\clip plot [smooth cycle, samples=8,domain={1:8}]
     (\x*360/8+5*rnd:0.5cm+1cm*rnd);
\shade [ball color=blue!70] (0.5+rnd,-0.5+rnd) circle (3cm);     
\end{tikzpicture}}
\end{document}

enter image description here

Tags:

Tikz Pgf