Follow along to "A Virtual World" course by Radu Mariescu-Istodor
https://www.youtube.com/watch?v=V_C7L7zelz8
Note: usually graphs are represented as points and connections, for simplicity in the course they are represented as segments between 2 points.