@@ -27,7 +27,7 @@ digraph {
2727                <TABLE BORDER=" 0"  >
2828                <TR><TD><FONT FACE=" Futura"   POINT-SIZE=" 40"  >A STUDY PATH FOR</FONT></TD></TR>
2929                <TR><TD><FONT FACE=" Futura-Bold"   POINT-SIZE=" 40"  >GAME PROGRAMMER</FONT></TD></TR>
30-                 <TR><TD><FONT FACE=" Futura"   POINT-SIZE=" 20"  >Milo Yip<br/>2016/12/20 </FONT></TD></TR>
30+                 <TR><TD><FONT FACE=" Futura"   POINT-SIZE=" 20"  >Milo Yip<br/>2017/7/26 </FONT></TD></TR>
3131                <TR><TD>https:// github.com/miloyip/game-programmer</TD></TR>
3232                </TABLE>
3333            > URL =" https://github.com/miloyip/game-programmer"  ]
@@ -519,6 +519,7 @@ digraph {
519519        gpupro5 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gpupro5.jpg"  /></TD></TR><TR><TD>GPU Pro 5 (2014)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1482208636/"  ]
520520        gpupro6 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gpupro6.jpg"  /></TD></TR><TR><TD>GPU Pro 6 (2015)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1482264617/"  ]
521521        gpupro7 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gpupro7.jpg"  /></TD></TR><TR><TD>GPU Pro 7 (2016)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/149874253X/"  ]
522+         gpuzen [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gpuzen.jpg"  /></TD></TR><TR><TD>GPU Zen (2017)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/0998822892/"  ]
522523
523524        pbrt3 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/pbrt3.jpg"  /></TD></TR><TR><TD>Physically Based<br/>Rendering (PBRT)<br/>3rd Ed (2016)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/0128006455/"  ]
524525        raytracingfromgroundup [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/raytracingfromgroundup.jpg"  /></TD></TR><TR><TD>Ray Tracing from<br/>the Ground Up<br/>(2007)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1568812728/"  ]
@@ -562,7 +563,7 @@ digraph {
562563
563564        realtimerendering ->  rtr3 [arrowhead =normal, style =solid]
564565        realtimerendering ->  tricks3dgpgurus
565-         rtr3 ->  graphicsprogrammingmethods ->  gpugems ->  gpugems2 ->  gpugems3 ->  gpupro ->  gpupro2 ->  gpupro3 ->  gpupro4 ->  gpupro5 ->  gpupro6 ->  gpupro7
566+         rtr3 ->  graphicsprogrammingmethods ->  gpugems ->  gpugems2 ->  gpugems3 ->  gpupro ->  gpupro2 ->  gpupro3 ->  gpupro4 ->  gpupro5 ->  gpupro6 ->  gpupro7  ->  gpuzen 
566567        { rank =same ;rtr3; rtvolumegraphics }
567568        rtr3 ->  { realtimeshadows; rtvolumegraphics }
568569        realtimeshadows ->  graphicsprogrammingmethods [style =invis]
@@ -596,7 +597,7 @@ digraph {
596597        cgtop [fixedsize =true,width =8,height =0.01,style =invis,label =" "  ]
597598        cgbottom [fixedsize =true,width =8,height =0.01,style =invis,label =" "  ]
598599        cgtop ->  cgbegin [style =invis]
599-         glassenernotebook2  ->  cgbottom [style =invis]
600+         gpuzen  ->  cgbottom [style =invis]
600601    }
601602
602603    subgraph  cluster_audio {
@@ -644,12 +645,14 @@ digraph {
644645        physicsforgamedevelopers2 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/physicsforgamedevelopers2.jpg"  /></TD></TR><TR><TD>Physics for Game<br/>Developers 2nd Ed (2013)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1449392512/"  ]
645646        physicsmodeling [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/physicsmodeling.jpg"  /></TD></TR><TR><TD>Physics Modeling<br/>for Game Programmers (2004)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1592000932/"  ]
646647
648+         fpbma [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/fpbma.jpg"  /></TD></TR><TR><TD>Foundations of Physically<br/>Based Modeling and<br/>Animation (2017)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1482234602/"  ]
647649        gamephysicsenginedev2 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gamephysicsenginedev2.jpg"  /></TD></TR><TR><TD>Game Physics Engine<br/>Development 2nd Ed (2010)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/0123819768/"  ]
648650        gamephysics2 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gamephysics2.jpg"  /></TD></TR><TR><TD>Game Physics 2nd Ed (2010)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/0123749034/"  ]
649651        collisiondetection3denv [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/collisiondetection3denv.jpg"  /></TD></TR><TR><TD>Collision Detection<br/>in Interactive 3D<br/>Environments (2003)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/155860801X/"  ]
650652        rtcollisiondetection [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/rtcollisiondetection.jpg"  /></TD></TR><TR><TD>Real-Time Collision<br/>Detection (2004)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1558607323/"  ]
651653        gamephysicspearls [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gamephysicspearls.jpg"  /></TD></TR><TR><TD>Game Physics Pearls<br/>(2010)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1568814747/"  ]
652654
655+         fluidenginedev [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/fluidenginedev.jpg"  /></TD></TR><TR><TD>Fluid Engine Development (2016)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1498719929/"  ]
653656        taofluidanimation [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/taofluidanimation.jpg"  /></TD></TR><TR><TD>The Art of<br/>Fluid Animation (2015)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1498700209/"  ]
654657        fluidsimulationforcg2 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/fluidsimulationforcg2.jpg"  /></TD></TR><TR><TD>Fluid Simulation<br/>for Computer Graphics<br/>2nd Ed (2015)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1482232839/"  ]
655658
@@ -664,11 +667,11 @@ digraph {
664667
665668        { animbegin; phybegin } ->  natureofcode
666669
667-         phyadvanced ->  gamephysicspearls
670+         phyadvanced ->  fpbma  ->   gamephysicspearls
668671        gamephysicspearls ->  collisiondetection3denv ->  rtcollisiondetection
669672        gamephysicspearls ->  gamephysicsenginedev2 ->  gamephysics2
670673
671-         { animadvanced; phyadvanced } ->  fluid ->  taofluidanimation ->  fluidsimulationforcg2
674+         { animadvanced; phyadvanced } ->  fluid ->  fluidenginedev  ->   taofluidanimation ->  fluidsimulationforcg2
672675
673676        phytop [fixedsize =true,width =8,height =0.01,style =invis,label =" "  ]
674677        phybottom [fixedsize =true,width =8,height =0.01,style =invis,label =" "  ]
@@ -706,6 +709,7 @@ digraph {
706709            rank =same 
707710            gameaipro [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gameaipro.jpg"  /></TD></TR><TR><TD>Game AI Pro (2013)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1466565969/"  ]
708711            gameaipro2 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gameaipro2.jpg"  /></TD></TR><TR><TD>Game AI Pro 2 (2015)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1482254794/"  ]
712+             gameaipro3 [label =<<TABLE BORDER=" 0"   CELLSPACING=" 0"  ><TR><TD WIDTH=" 100"   HEIGHT=" 100"   FIXEDSIZE=" TRUE"  ><IMG SCALE=" TRUE"   SRC=" images/gameaipro3.jpg"  /></TD></TR><TR><TD>Game AI Pro 3 (2017)</TD></TR></TABLE>> URL =" https://www.amazon.com/dp/1482254794/"  ]
709713        }
710714
711715        aibegin ->  aiforgames2 ->  aiintermediate ->  aima3 [arrowhead =normal, style =solid]
@@ -714,12 +718,12 @@ digraph {
714718        aima3 ->  aimisc
715719        aimisc ->  aigpwisdom 
716720        aigpwisdom ->  aigpwisdom2 ->  aigpwisdom3 ->  aigpwisdom4
717-         aigpwisdom4 ->  gameaipro ->  gameaipro2
721+         aigpwisdom4 ->  gameaipro ->  gameaipro2  ->  gameaipro3 
718722
719723        aitop [fixedsize =true,width =8,height =0.01,style =invis,label =" "  ]
720724        aibottom [fixedsize =true,width =8,height =0.01,style =invis,label =" "  ]
721725        aitop ->  aibegin [style =invis]
722-         gameaipro2  ->  aibottom [style =invis]
726+         gameaipro3  ->  aibottom [style =invis]
723727    }
724728
725729    subgraph  cluster_multiplayer {
0 commit comments