Drawing a torus using the pst-solides3d package, as in Herbert's answer, is possible. You can extend this to the code below, which embeds a 4x4 black-and-red chessboard on a torus.
\documentclass{article}
\usepackage{pst-solides3d}% http://ctan.org/pkg/pst-solides3d
\begin{document}
\begin{pspicture}(-3,-3)(3.5,2.5)
\psset{Decran=20,viewpoint=10 10 15}%,lightsrc=10 10 20 rtp2xyz,lightintensity=1
\pstVerb{/iface 0 store}%
\psSolid[
fcol=4 {%
iface (Black) iface 1 add (Black) iface 2 add (Black) iface 3 add (Black)
iface 4 add (Red) iface 5 add (Red) iface 6 add (Red) iface 7 add (Red)
iface 8 add (Black) iface 9 add (Black) iface 10 add (Black) iface 11 add (Black)
iface 12 add (Red) iface 13 add (Red) iface 14 add (Red) iface 15 add (Red)
iface 64 add (Red) iface 65 add (Red) iface 66 add (Red) iface 67 add (Red)
iface 68 add (Black) iface 69 add (Black) iface 70 add (Black) iface 71 add (Black)
iface 72 add (Red) iface 73 add (Red) iface 74 add (Red) iface 75 add (Red)
iface 76 add (Black) iface 77 add (Black) iface 78 add (Black) iface 79 add (Black)
iface 128 add (Black) iface 129 add (Black) iface 130 add (Black) iface 131 add (Black)
iface 132 add (Red) iface 133 add (Red) iface 134 add (Red) iface 135 add (Red)
iface 136 add (Black) iface 137 add (Black) iface 138 add (Black) iface 139 add (Black)
iface 140 add (Red) iface 141 add (Red) iface 142 add (Red) iface 143 add (Red)
iface 192 add (Red) iface 193 add (Red) iface 194 add (Red) iface 195 add (Red)
iface 196 add (Black) iface 197 add (Black) iface 198 add (Black) iface 199 add (Black)
iface 200 add (Red) iface 201 add (Red) iface 202 add (Red) iface 203 add (Red)
iface 204 add (Black) iface 205 add (Black) iface 206 add (Black) iface 207 add (Black) /iface
iface 16 add store}
repeat,
r1=4,r0=1,% Inner radius and torus radius
object=tore,% Object is a torus
ngrid=16 16,% Grid definition
linewidth=0.1pt,% Edge line width
% grid,% Remove edges
% RotY=30% Rotation about y-axis (RotX and RotZ for rotations about x- and z-axis)
]
\end{pspicture}
\end{document}

The fcol=... repeat part specifies the face colours. Merely using a 4x4 grid makes a torus look like a square. For that reason, I bumped it up to a 16x16 grid torus. However, this adds a bunch of face colour specification, which can't be nested to make it easier. It is still feasible, but cumbersome. The smoother the surface you're after, the more you'll have to add to colour the faces. Add the option grid in your \psSolid[...] definition removes the edges, and produces

All the rendering/processing of the solid is performed on the Postscript side of things. This implies that compilation will be quick, while loading into a viewer might be a little slow. However, once you're happy with the torus look, you can export the vertices & faces to a file, and load these directly. This speeds up the viewing dramatically.
In the above examples, the colours were chosen to accentuate the torus definition. Choosing white without adding edges would not work well, so perhaps some off-white colour would work. Also, you can modify the viewpoint and/or axis rotation. See the package documentation for more information on these parameters.