Drawing a 3D commutative diagram
Here is a proposal for a pseudo-3D tikz-cd diagram.
\documentclass[border=2pt]{standalone}
\usepackage{amssymb,amsmath}
\usepackage{tikz-cd}
\usetikzlibrary{arrows}
\usepackage{tikz}
\begin{document}
\tikzset{zshift/.style={xshift={-0.3*#1},yshift={-0.9*#1}}}
\begin{tikzcd}[row sep=2cm,column sep=2cm,inner sep=1ex]
& U \arrow{d}{T_0} \arrow{dr}{\Pi} & \\
V_1\times\cdots V_n \arrow{ur}{\varphi}
\arrow{r}{\phi} \arrow{rr}{\psi}&
|[zshift=-1.5cm]| V \arrow{r}{T}& |[zshift=1cm]|W
\end{tikzcd}
\end{document}
Here are similarly-shaped diagrams taken from another context; maybe they are helpful:
\begin{tikzcd}[row sep={7.2em,between origins}, column sep={9.0em,between origins}, background color=backgroundColor, ampersand replacement=\&,execute at end picture={
\foreach \Number in {A,B,...,D}
{\coordinate (\Number) at (\Number.center);}
\begin{pgfonlayer}{background}
\fill[left color=grey!98!black, right color=grey!80!white, shading angle=60] (A) -- (C) -- (B) -- cycle;
\fill[left color=grey!85!black, right color=grey!85!white, shading angle=-60] (D) -- (C) -- (B) -- cycle;
\fill[left color=grey!80!black, right color=grey!98!white, shading angle=180] (A) -- (B) -- (D) -- cycle;
\draw[dashed, dash pattern=on 3.0pt off 3.0pt] (B) -- (A);
\draw[dashed, dash pattern=on 3.0pt off 3.0pt] (B) -- (C);
\draw[dashed, dash pattern=on 3.0pt off 3.0pt] (B) -- (D);
\end{pgfonlayer}
\filldraw[black!30!white] (A) circle (6pt) node[black,align=center] {$A$};
\filldraw[black!30!white] (B) circle (6pt) node[black,align=center] {$B$};
\filldraw[black!30!white] (C) circle (6pt) node[black,align=center] {$C$};
\filldraw[black!30!white] (D) circle (6pt) node[black,align=center] {$D$};
}]
\&
|[alias=C]|C
\arrow[rdd, "h"]
\&\\[4.5em]\&
|[alias=B]|B
\arrow[u, dashed, "\textcolor{white}{\phantom{g}}"{description,background color=grey,opacity=0.75}, dash pattern=on 3.0pt off 3.0pt]
\arrow[u, phantom, "\textcolor{white}{g}"]
\arrow[dr, dashed, "\textcolor{white}{\phantom{h\circ g}}"{description,background color=grey,opacity=0.5}, dash pattern=on 3.0pt off 3.0pt]
\arrow[dr, dashed, "\textcolor{white}{h\circ g}", phantom]
\&\\[-1.85em]
|[alias=A]|A
\arrow[ruu, "g\circ f"]
\arrow[rr, "h\circ g\circ f"']
\arrow[ru, dashed, "\textcolor{white}{\phantom{f}}"{description,background color=grey,opacity=0.75}, dash pattern=on 3.0pt off 3.0pt]
\arrow[ru, dashed, "\textcolor{white}{f}", phantom]
\&\&
|[alias=D]|D\mathrlap{.}
\end{tikzcd}
(Ignore the 2-morphisms):
\begin{tikzcd}[row sep={7.2em,between origins}, column sep={9.0em,between origins}, background color=backgroundColor, ampersand replacement=\&] \& A_{2} \arrow[rdd, "f_{23}", bend left=20] \&\\\& A_{1} \arrow[u, "f_{12}"{description}, dash pattern=on 4.0pt off 4.0pt] \arrow[rd, "f_{13}"'{description,name=f13}, dash pattern=on 4.0pt off 4.0pt] \&\\ A_{0} \arrow[ruu, "f_{02}"{name=f02}, bend left=20] \arrow[rr, "f_{03}"'{name=f03}, bend right=20] \arrow[ru, "f_{01}"{description}, dash pattern=on 4.0pt off 4.0pt] \&\& A_{3} % 2-Arrows \arrow[from=2-2, to=f02, Rightarrow, shorten=1.0em, "\theta_{012}"description, pos=0.475] \arrow[from=1-2, to=f13, Rightarrow, yshift=-0.25em, xshift=0.75em, shorten=3.5em, "\theta_{123}"description, pos=0.475] \arrow[from=2-2, to=f03, Rightarrow, shorten=2.5em, "\theta_{013}"description, pos=0.475] \arrow[from=1-2, to=f03, bend left=20, yshift=+0.0em, xshift=0.0em, crossing over, Rightarrow, shorten=2.0em, "\hspace{+0.625em}\theta_{023}"description, pos=0.425, crossing over clearance=1.5ex] \end{tikzcd}