You can do it with some minimal math. Basically you take 3d points x,y,z and project it to the screen with:
screenx=x/z
screeny=y/z
size=1/z
If the perspective is too severe you can scale it with:
screenx=scale*x/z
screeny=scale*y/z
size=scale/z
The camera is at 0,0,0 but if you want to move it around you can also do this:
screenx=scale*(x-camerax)/(z-cameraz)
screeny=scale*(y-cameray)/(z-cameraz)
size=scale/(z-cameraz)
you can also hide anything behind the camera by seeing if scale/(z-cameraz)<0 for each object.
lines are done by taking two points and using lerp to find the in between positions.
https://www.dropbox.com/s/5fser7xtmov44 ... .capx?dl=1
Thank you, this was very helpful.
I was able to make a very basic/linear node generator after figuring out how your example worked: https://www.dropbox.com/s/w5m8q3fyw97fg ... .capx?dl=0
The method I used to focus on the next node is not perfect but it works for now. My biggest concern now is how I will generate different paths and allow the player to choose which path to take.
The goal is to make it branch out like the sector map in FTL (shown below)
I will experiment some more to try and find an efficient way to accomplish this.