normal z-buffer

logarithmic z-buffer

reverse z-buffer

three.jsReverse Depth Buffer
Note: For best results, a floating-point depth buffer should be used with post-processing. See Visualizing Depth Precision.