Z-axis is not used
Well, it seems that the original tree was just 3D, with proper perspective. Darker parts are the ones with deeper z, that's it. Also, perspective allowed the original to have nice curves on the edges, where you have sharp turns.
We'd need WebGL to do actual 3D (instead of faking it), so it would basically require a rewrite of the whole thing. Anyone up for that?
To cast 3d point into 2d surface you do not need webgl, equations are quite simple.
Since the original tree seems rather simple (camera's at x=0, y=-a, z=-b) and it's looking in the positive z direction, the 3d render equations can be enormously simplified. check out anvaka/atree#4 for an implementation