What i did on the example is for each cube make a correct 3D perspective for topdown, also edited some stuff in the .fx code to avoid different size from bottom-Top of the cube to get a more "ortogonal view" and all perspective is based/look on the player sprite with 90º .
If i understood well, maybe you want change the global perspective to do something like that?
To change the global perspective to use this shader as a topdown game like my one or other perspective you will need to do lots of tests and play with the XYZ values focusing your player to get for a FPS, Starfox or similar stuff.
Maybe you can be interested on this raycast engine:
Or use Q3D based on Thre.js for real 3D or Babylon3D based on Babylon.js(This one now free after developer drop support) also for real 3D but well this options will need more 3D skills to setup all the world.