TikZ is not good at 3D. In particular, it has no support for lighting - no concept of a light source, of shadows etc. Faking is always possible - painting pixel-by-pixel, if you like - but a pointless waste of time.
If you really need to draw this yourself, use a tool designed for 3D which can handle light sources. Asymptote has been mentioned, but there are probably better options. Asymptote is good if you create it as a 2D image, but will insist on raster output if you switch to 3D.
However, for this image, the effort is really pointless, as high resolution raster and vector is already available from https://openclipart.org/detail/118837/traffic-light-dan-gerhar-01. Downloading the PDF and using \includegraphics
is the painless path to excellent quality here. Alternatively, you can try downloading the SVG and converting it. My initial attempt with Inkscape wasn't overly successful, but you may do better by fine-tuning things.

For reference, here is what my attempt with Inkscape yielded. I guess there are tricks to this, but these are left as an exercise for the reader. Which is to say, I don't know what they are - my conversions are very hit-or-miss, with more misses than hits, unfortunately. (The donkey worked fine; the don-key and the traffic lights rather less so.)
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{tikzpicture}
\begin{document}
\definecolor{c242424}{RGB}{36,36,36}
\definecolor{c4c4c4c}{RGB}{76,76,76}
\begin{tikzpicture}[y=0.80pt, x=0.80pt, yscale=-1.000000, xscale=1.000000, inner sep=0pt, outer sep=0pt]
\begin{scope}[shift={(-29.144,-25.155)}]
\begin{scope}[shift={(-97.143,-117.14)}]
\path[cm={{0.91993,0.0,0.0,1.1621,(18.431,13.418)}},color=black]
(535.3808,160.3975)arc(-0.000:90.000:100.005100 and
49.497)arc(90.000:180.000:100.005100 and 49.497)arc(180.000:270.000:100.005100
and 49.497)arc(270.000:360.000:100.005100 and 49.497) -- cycle;
\path[color=black,rounded corners=0.0000cm] (300.0000,193.1500) rectangle
(536.0700,828.7100);
\path[color=black,fill=c242424,rounded corners=0.0000cm] (317.8600,205.2200)
rectangle (520.0000,407.3600);
\path[fill=c4c4c4c,even odd rule] (520.2500,204.9800) -- (318.1400,204.9800) --
(326.3100,213.1500) -- (512.0900,213.1500) -- (520.2500,204.9800) -- cycle;
\path[fill=black,even odd rule] (520.2500,407.6000) -- (317.6400,407.6000) --
(325.8100,399.4300) -- (512.0900,399.4300) -- (520.2500,407.6000) -- cycle;
\path[fill=black,even odd rule] (317.6400,204.4800) -- (317.6400,407.6000) --
(325.8100,399.4300) -- (325.8100,212.6400) -- (317.6400,204.4800) -- cycle;
\path[fill=c4c4c4c,even odd rule] (520.2500,204.9800) -- (520.2500,407.6000) --
(512.0900,399.4300) -- (512.0900,213.1500) -- (520.2500,204.9800) -- cycle;
\begin{scope}[shift={(0,-0.2529)}]
\path[cm={{1.4033,0.0,0.0,1.4033,(-154.44,-176.16)}},color=black]
(462.8571,343.7907)arc(0.000:90.000:54.286)arc(90.000:180.000:54.286)arc(180.000:270.000:54.286)arc(270.000:360.000:54.286)
-- cycle;
\path[cm={{1.4033,0.0,0.0,1.4033,(-154.44,-176.16)}},color=black,draw=black,line
join=round,line cap=round,line width=4.276pt]
(462.8571,343.7907)arc(0.000:90.000:54.286)arc(90.000:180.000:54.286)arc(180.000:270.000:54.286)arc(270.000:360.000:54.286)
-- cycle;
\end{scope}
\begin{scope}[shift={(0,205.0)}]
\path[color=black,fill=c242424,rounded corners=0.0000cm] (317.8600,205.2200)
rectangle (520.0000,407.3600);
\path[fill=c4c4c4c,even odd rule] (520.2500,204.9800) -- (318.1400,204.9800) --
(326.3100,213.1500) -- (512.0900,213.1500) -- (520.2500,204.9800) -- cycle;
\path[fill=black,even odd rule] (520.2500,407.6000) -- (317.6400,407.6000) --
(325.8100,399.4300) -- (512.0900,399.4300) -- (520.2500,407.6000) -- cycle;
\path[fill=black,even odd rule] (317.6400,204.4800) -- (317.6400,407.6000) --
(325.8100,399.4300) -- (325.8100,212.6400) -- (317.6400,204.4800) -- cycle;
\path[fill=c4c4c4c,even odd rule] (520.2500,204.9800) -- (520.2500,407.6000) --
(512.0900,399.4300) -- (512.0900,213.1500) -- (520.2500,204.9800) -- cycle;
\end{scope}
\begin{scope}[shift={(0,3.247)}]
\path[cm={{1.4033,0.0,0.0,1.4033,(-154.44,25.336)}},color=black]
(462.8571,343.7907)arc(0.000:90.000:54.286)arc(90.000:180.000:54.286)arc(180.000:270.000:54.286)arc(270.000:360.000:54.286)
-- cycle;
\path[cm={{1.4033,0.0,0.0,1.4033,(-154.44,25.336)}},color=black,draw=black,line
join=round,line cap=round,line width=4.276pt]
(462.8571,343.7907)arc(0.000:90.000:54.286)arc(90.000:180.000:54.286)arc(180.000:270.000:54.286)arc(270.000:360.000:54.286)
-- cycle;
\end{scope}
\begin{scope}[shift={(0,410.0)}]
\path[color=black,fill=c242424,rounded corners=0.0000cm] (317.8600,205.2200)
rectangle (520.0000,407.3600);
\path[fill=c4c4c4c,even odd rule] (520.2500,204.9800) -- (318.1400,204.9800) --
(326.3100,213.1500) -- (512.0900,213.1500) -- (520.2500,204.9800) -- cycle;
\path[fill=black,even odd rule] (520.2500,407.6000) -- (317.6400,407.6000) --
(325.8100,399.4300) -- (512.0900,399.4300) -- (520.2500,407.6000) -- cycle;
\path[fill=black,even odd rule] (317.6400,204.4800) -- (317.6400,407.6000) --
(325.8100,399.4300) -- (325.8100,212.6400) -- (317.6400,204.4800) -- cycle;
\path[fill=c4c4c4c,even odd rule] (520.2500,204.9800) -- (520.2500,407.6000) --
(512.0900,399.4300) -- (512.0900,213.1500) -- (520.2500,204.9800) -- cycle;
\end{scope}
\begin{scope}[shift={(0.01812,4.247)}]
\path[cm={{1.4033,0.0,0.0,1.4033,(-154.44,229.34)}},color=black]
(462.8571,343.7907)arc(0.000:90.000:54.286)arc(90.000:180.000:54.286)arc(180.000:270.000:54.286)arc(270.000:360.000:54.286)
-- cycle;
\path[cm={{1.4033,0.0,0.0,1.4033,(-154.44,229.34)}},color=black,draw=black,line
join=round,line cap=round,line width=4.276pt]
(462.8571,343.7907)arc(0.000:90.000:54.286)arc(90.000:180.000:54.286)arc(180.000:270.000:54.286)arc(270.000:360.000:54.286)
-- cycle;
\end{scope}
\begin{scope}[shift={(14.0,0)}]
\path[color=black,draw=black,line cap=round,line width=6.000pt]
(547.2900,790.9300) -- (548.7100,640.2200) -- (692.2900,640.2200) .. controls
(691.7400,674.7900) and (699.9500,686.2100) .. (646.7800,729.9900) .. controls
(618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[color=black,fill=c242424,rounded corners=0.0000cm] (522.2900,615.0000)
rectangle (538.0040,817.5400);
\path[fill=c4c4c4c,even odd rule] (537.9600,614.9800) -- (537.9600,817.6000) --
(546.1300,809.4300) -- (546.1300,623.1500) -- (537.9600,614.9800) -- cycle;
\end{scope}
\begin{scope}[shift={(14.0,-410.0)}]
\path[color=black,draw=black,line cap=round,line width=6.000pt]
(547.2900,790.9300) -- (548.7100,640.2200) -- (692.2900,640.2200) .. controls
(691.7400,674.7900) and (699.9500,686.2100) .. (646.7800,729.9900) .. controls
(618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[color=black,fill=c242424,rounded corners=0.0000cm] (522.2900,615.0000)
rectangle (538.0040,817.5400);
\path[fill=c4c4c4c,even odd rule] (537.9600,614.9800) -- (537.9600,817.6000) --
(546.1300,809.4300) -- (546.1300,623.1500) -- (537.9600,614.9800) -- cycle;
\end{scope}
\begin{scope}[shift={(14.0,-205.0)}]
\path[color=black,draw=black,line cap=round,line width=6.000pt]
(547.2900,790.9300) -- (548.7100,640.2200) -- (692.2900,640.2200) .. controls
(691.7400,674.7900) and (699.9500,686.2100) .. (646.7800,729.9900) .. controls
(618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[color=black,fill=c242424,rounded corners=0.0000cm] (522.2900,615.0000)
rectangle (538.0040,817.5400);
\path[fill=c4c4c4c,even odd rule] (537.9600,614.9800) -- (537.9600,817.6000) --
(546.1300,809.4300) -- (546.1300,623.1500) -- (537.9600,614.9800) -- cycle;
\end{scope}
\begin{scope}[cm={{-1.0,0.0,0.0,1.0,(822.49,0.0)}}]
\path[color=black,draw=black,line cap=round,line width=6.000pt]
(547.2900,790.9300) -- (548.7100,640.2200) -- (692.2900,640.2200) .. controls
(691.7400,674.7900) and (699.9500,686.2100) .. (646.7800,729.9900) .. controls
(618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[color=black,fill=c242424,rounded corners=0.0000cm] (522.2900,615.0000)
rectangle (538.0040,817.5400);
\path[fill=black,even odd rule] (537.9600,614.9800) -- (537.9600,817.6000) --
(546.1300,809.4300) -- (546.1300,623.1500) -- (537.9600,614.9800) -- cycle;
\end{scope}
\begin{scope}[cm={{-1.0,0.0,0.0,1.0,(822.49,-410.0)}}]
\path[color=black,draw=black,line cap=round,line width=6.000pt]
(547.2900,790.9300) -- (548.7100,640.2200) -- (692.2900,640.2200) .. controls
(691.7400,674.7900) and (699.9500,686.2100) .. (646.7800,729.9900) .. controls
(618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[color=black,fill=c242424,rounded corners=0.0000cm] (522.2900,615.0000)
rectangle (538.0040,817.5400);
\path[fill=black,even odd rule] (537.9600,614.9800) -- (537.9600,817.6000) --
(546.1300,809.4300) -- (546.1300,623.1500) -- (537.9600,614.9800) -- cycle;
\end{scope}
\begin{scope}[cm={{-1.0,0.0,0.0,1.0,(822.49,-205.0)}}]
\path[color=black,draw=black,line cap=round,line width=6.000pt]
(547.2900,790.9300) -- (548.7100,640.2200) -- (692.2900,640.2200) .. controls
(691.7400,674.7900) and (699.9500,686.2100) .. (646.7800,729.9900) .. controls
(618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[color=black,fill=c242424,rounded corners=0.0000cm] (522.2900,615.0000)
rectangle (538.0040,817.5400);
\path[fill=black,even odd rule] (537.9600,614.9800) -- (537.9600,817.6000) --
(546.1300,809.4300) -- (546.1300,623.1500) -- (537.9600,614.9800) -- cycle;
\end{scope}
\path[cm={{-1.0,0.0,0.0,1.0,(822.49,-410.0)}},color=black,draw=black,fill=black,opacity=0.250,line
cap=round,line width=6.000pt] (547.2900,790.9300) -- (548.7100,640.2200) ..
controls (548.7100,640.2200) and (573.5200,662.6400) .. (646.7800,729.9900) ..
controls (618.7100,753.1100) and (604.3400,759.5500) .. (603.0000,790.9300) --
(547.2900,790.9300) -- cycle;
\path[cm={{-1.0,0.0,0.0,1.0,(822.49,-205.0)}},color=black,draw=black,fill=black,opacity=0.250,line
cap=round,line width=6.000pt] (547.2900,790.9300) -- (548.7100,640.2200) --
(692.2900,640.2200) .. controls (691.7400,674.7900) and (699.9500,686.2100) ..
(646.7800,729.9900) .. controls (618.7100,753.1100) and (604.3400,759.5500) ..
(603.0000,790.9300) -- (547.2900,790.9300) -- cycle;
\path[cm={{-1.0,0.0,0.0,1.0,(822.49,0.0)}},color=black,draw=black,fill=black,opacity=0.250,line
cap=round,line width=6.000pt] (547.2900,790.9300) -- (548.7100,640.2200) --
(692.2900,640.2200) .. controls (691.7400,674.7900) and (699.9500,686.2100) ..
(646.7800,729.9900) .. controls (618.7100,753.1100) and (604.3400,759.5500) ..
(603.0000,790.9300) -- (547.2900,790.9300) -- cycle;
\end{scope}
\end{scope}
\end{tikzpicture}
\end{document}
\includegraphics
? TikZ is not good at 3D. There is no support for lighting, for example. If you want that, use a proper 3D tool. Of course, you can use TikZ because you can paint pixel-by-pixel, if you must, but why would you do that?ball color=red
etc. will give you something a bit more 3D like for the lights. But the way the light is falling ... there's just no reason to do that in TikZ.