diff --git a/game-programmer.dot b/game-programmer.dot index da84c3f..2d0649a 100644 --- a/game-programmer.dot +++ b/game-programmer.dot @@ -27,7 +27,7 @@ digraph { - +
A STUDY PATH FOR
GAME PROGRAMMER
Milo Yip
2016/12/20
Milo Yip
2017/7/26
https://github.com/miloyip/game-programmer
> URL="https://github.com/miloyip/game-programmer"] @@ -519,6 +519,7 @@ digraph { gpupro5 [label=<
GPU Pro 5 (2014)
> URL="https://www.amazon.com/dp/1482208636/"] gpupro6 [label=<
GPU Pro 6 (2015)
> URL="https://www.amazon.com/dp/1482264617/"] gpupro7 [label=<
GPU Pro 7 (2016)
> URL="https://www.amazon.com/dp/149874253X/"] + gpuzen [label=<
GPU Zen (2017)
> URL="https://www.amazon.com/dp/0998822892/"] pbrt3 [label=<
Physically Based
Rendering (PBRT)
3rd Ed (2016)
> URL="https://www.amazon.com/dp/0128006455/"] raytracingfromgroundup [label=<
Ray Tracing from
the Ground Up
(2007)
> URL="https://www.amazon.com/dp/1568812728/"] @@ -562,7 +563,7 @@ digraph { realtimerendering -> rtr3 [arrowhead=normal, style=solid] realtimerendering -> tricks3dgpgurus - rtr3 -> graphicsprogrammingmethods -> gpugems -> gpugems2 -> gpugems3 -> gpupro -> gpupro2 -> gpupro3 -> gpupro4 -> gpupro5 -> gpupro6 -> gpupro7 + rtr3 -> graphicsprogrammingmethods -> gpugems -> gpugems2 -> gpugems3 -> gpupro -> gpupro2 -> gpupro3 -> gpupro4 -> gpupro5 -> gpupro6 -> gpupro7 -> gpuzen { rank=same;rtr3; rtvolumegraphics } rtr3 -> { realtimeshadows; rtvolumegraphics } realtimeshadows -> graphicsprogrammingmethods [style=invis] @@ -596,7 +597,7 @@ digraph { cgtop [fixedsize=true,width=8,height=0.01,style=invis,label=""] cgbottom [fixedsize=true,width=8,height=0.01,style=invis,label=""] cgtop -> cgbegin [style=invis] - glassenernotebook2 -> cgbottom [style=invis] + gpuzen -> cgbottom [style=invis] } subgraph cluster_audio { @@ -644,12 +645,14 @@ digraph { physicsforgamedevelopers2 [label=<
Physics for Game
Developers 2nd Ed (2013)
> URL="https://www.amazon.com/dp/1449392512/"] physicsmodeling [label=<
Physics Modeling
for Game Programmers (2004)
> URL="https://www.amazon.com/dp/1592000932/"] + fpbma [label=<
Foundations of Physically
Based Modeling and
Animation (2017)
> URL="https://www.amazon.com/dp/1482234602/"] gamephysicsenginedev2 [label=<
Game Physics Engine
Development 2nd Ed (2010)
> URL="https://www.amazon.com/dp/0123819768/"] gamephysics2 [label=<
Game Physics 2nd Ed (2010)
> URL="https://www.amazon.com/dp/0123749034/"] collisiondetection3denv [label=<
Collision Detection
in Interactive 3D
Environments (2003)
> URL="https://www.amazon.com/dp/155860801X/"] rtcollisiondetection [label=<
Real-Time Collision
Detection (2004)
> URL="https://www.amazon.com/dp/1558607323/"] gamephysicspearls [label=<
Game Physics Pearls
(2010)
> URL="https://www.amazon.com/dp/1568814747/"] + fluidenginedev [label=<
Fluid Engine Development (2016)
> URL="https://www.amazon.com/dp/1498719929/"] taofluidanimation [label=<
The Art of
Fluid Animation (2015)
> URL="https://www.amazon.com/dp/1498700209/"] fluidsimulationforcg2 [label=<
Fluid Simulation
for Computer Graphics
2nd Ed (2015)
> URL="https://www.amazon.com/dp/1482232839/"] @@ -664,11 +667,11 @@ digraph { { animbegin; phybegin } -> natureofcode - phyadvanced -> gamephysicspearls + phyadvanced -> fpbma -> gamephysicspearls gamephysicspearls -> collisiondetection3denv -> rtcollisiondetection gamephysicspearls -> gamephysicsenginedev2 -> gamephysics2 - { animadvanced; phyadvanced } -> fluid -> taofluidanimation -> fluidsimulationforcg2 + { animadvanced; phyadvanced } -> fluid -> fluidenginedev -> taofluidanimation -> fluidsimulationforcg2 phytop [fixedsize=true,width=8,height=0.01,style=invis,label=""] phybottom [fixedsize=true,width=8,height=0.01,style=invis,label=""] @@ -706,6 +709,7 @@ digraph { rank=same gameaipro [label=<
Game AI Pro (2013)
> URL="https://www.amazon.com/dp/1466565969/"] gameaipro2 [label=<
Game AI Pro 2 (2015)
> URL="https://www.amazon.com/dp/1482254794/"] + gameaipro3 [label=<
Game AI Pro 3 (2017)
> URL="https://www.amazon.com/dp/1482254794/"] } aibegin -> aiforgames2 -> aiintermediate -> aima3 [arrowhead=normal, style=solid] @@ -714,12 +718,12 @@ digraph { aima3 -> aimisc aimisc -> aigpwisdom aigpwisdom -> aigpwisdom2 -> aigpwisdom3 -> aigpwisdom4 - aigpwisdom4 -> gameaipro -> gameaipro2 + aigpwisdom4 -> gameaipro -> gameaipro2 -> gameaipro3 aitop [fixedsize=true,width=8,height=0.01,style=invis,label=""] aibottom [fixedsize=true,width=8,height=0.01,style=invis,label=""] aitop -> aibegin [style=invis] - gameaipro2 -> aibottom [style=invis] + gameaipro3 -> aibottom [style=invis] } subgraph cluster_multiplayer { diff --git a/game-programmer.jpg b/game-programmer.jpg index 83797f6..3b128b1 100644 Binary files a/game-programmer.jpg and b/game-programmer.jpg differ diff --git a/game-programmer.pdf b/game-programmer.pdf index 55e7578..11329c3 100644 Binary files a/game-programmer.pdf and b/game-programmer.pdf differ diff --git a/game-programmer.png b/game-programmer.png index c12ab45..56a4b70 100644 Binary files a/game-programmer.png and b/game-programmer.png differ diff --git a/game-programmer.svg b/game-programmer.svg index 173af80..b9d7f22 100644 --- a/game-programmer.svg +++ b/game-programmer.svg @@ -1,198 +1,236 @@ - - - + + %3 - -cluster_toc - -cluster_legend - -Legends - -cluster_kid - -0. Game Programming for Kids - -cluster_cs - -1. Computer Science - -cluster_proglang - -2. Programming Languages - -cluster_se - -3. Software Development - -cluster_math - -4. Mathematics for Game Programming - -cluster_gameprog - -5. Game Programming - -cluster_engine - -6. Game Engine Development - -cluster_cg - -7. Computer Graphics (CG) - -cluster_audio - -8. Game Audio - -cluster_physics - -9. Game Physics and Animation - -cluster_ai - -10. Game Artificial Intelligence (AI) - -cluster_multiplayer - -11. Multiplayer Game Programming + + +cluster_math + +4. Mathematics for Game Programming + + +cluster_gameprog + +5. Game Programming + + +cluster_engine + +6. Game Engine Development + + +cluster_cg + +7. Computer Graphics (CG) + + +cluster_toc + + +cluster_legend + +Legends + + +cluster_kid + +0. Game Programming for Kids + + +cluster_cs + +1. Computer Science + + +cluster_proglang + +2. Programming Languages + + +cluster_se + +3. Software Development + + +cluster_audio + +8. Game Audio + + +cluster_physics + +9. Game Physics and Animation + + +cluster_ai + +10. Game Artificial Intelligence (AI) + + +cluster_multiplayer + +11. Multiplayer Game Programming -toctop + +toctop -A STUDY PATH FOR -GAME PROGRAMMER -Milo Yip -2016/12/20 -https://github.com/miloyip/game-programmer +A STUDY PATH FOR +GAME PROGRAMMER +Milo Yip +2017/7/26 +https://github.com/miloyip/game-programmer -kid - -0. Game Programming for Kids + +kid + +0. Game Programming for Kids -cs - -1. Computer Science + +cs + +1. Computer Science -kid->cs - - + +kid->cs + + -proglang - -2. Programming Languages + +proglang + +2. Programming Languages -cs->proglang - - + +cs->proglang + + -softwaredev - -3. Software Development + +softwaredev + +3. Software Development -proglang->softwaredev - - + +proglang->softwaredev + + -math - -4. Mathematics for Game Programming + +math + +4. Mathematics for Game Programming -softwaredev->math - - + +softwaredev->math + + -gameprog - -5. Game Programming + +gameprog + +5. Game Programming -math->gameprog - - + +math->gameprog + + -gameengine - -6. Game Engine Development + +gameengine + +6. Game Engine Development -gameprog->gameengine - - + +gameprog->gameengine + + -cg - -7. Computer Graphics + +cg + +7. Computer Graphics -gameengine:e->cg:e - - + +gameengine:e->cg:e + + -audio - -8. Game Audio + +audio + +8. Game Audio -gameengine:e->audio:e - - + +gameengine:e->audio:e + + -phyanim - -9. Game Physics and Animation + +phyanim + +9. Game Physics and Animation -gameengine:e->phyanim:e - - + +gameengine:e->phyanim:e + + -ai - -10. Game Artificial Intelligence + +ai + +10. Game Artificial Intelligence -gameengine:e->ai:e - - + +gameengine:e->ai:e + + -multiplayer - -11. Multiplayer Game Programming + +multiplayer + +11. Multiplayer Game Programming -gameengine:e->multiplayer:e - - + +gameengine:e->multiplayer:e + + @@ -200,28 +238,34 @@ -legendA1 -Recommended Path + +legendA1 +Recommended Path -legendA2 + +legendA2 -legendA1->legendA2 - - + +legendA1->legendA2 + + -legendB1 -Optional Path + +legendB1 +Optional Path -legendB2 + +legendB2 -legendB1->legendB2 - - + +legendB1->legendB2 + + @@ -231,179 +275,205 @@ -age5 - -Beginning from Age of 5 + +age5 + +Beginning from Age of 5 -scratchjr + +scratchjr - -The Official -ScratchJr Book (2015) + +The Official +ScratchJr Book (2015) -age5->scratchjr - - + +age5->scratchjr + + -age8 - -Beginning from Age of 8 + +age8 + +Beginning from Age of 8 -codinggamesinscratch + +codinggamesinscratch - -Coding Games -in Scratch -(2015) + +Coding Games +in Scratch +(2015) -age8->codinggamesinscratch - - + +age8->codinggamesinscratch + + -superscratchprogadv + +superscratchprogadv - -Super Scratch -Programming Adventure! -(2013) + +Super Scratch +Programming Adventure! +(2013) -age8->superscratchprogadv - - + +age8->superscratchprogadv + + -kidintermediate - -Intermediate Game Programming for Kids + +kidintermediate + +Intermediate Game Programming for Kids -inventgamepython3 + +inventgamepython3 - -Invent Your Own -Computer Games with -Python 3rd Ed (2015) + +Invent Your Own +Computer Games with +Python 3rd Ed (2015) -kidintermediate->inventgamepython3 - - + +kidintermediate->inventgamepython3 + + -learntoprogramwithminecraft + +learntoprogramwithminecraft - -Learn to Program -with Minecraft (2015) + +Learn to Program +with Minecraft (2015) -kidintermediate->learntoprogramwithminecraft - - + +kidintermediate->learntoprogramwithminecraft + + -3dgpforkids + +3dgpforkids - -3D Game Programming -for Kids (2013) + +3D Game Programming +for Kids (2013) -kidintermediate->3dgpforkids - - + +kidintermediate->3dgpforkids + + -scratchjr->age8 - - + +scratchjr->age8 + + -helpyoukidswithcomputercoding + +helpyoukidswithcomputercoding - -Help Your Kids -with Computer Coding -(2015) + +Help Your Kids +with Computer Coding +(2015) -codinggamesinscratch->helpyoukidswithcomputercoding - - + +codinggamesinscratch->helpyoukidswithcomputercoding + + -learntoprogramwithscratch + +learntoprogramwithscratch - -Learn to Program - with Scratch -(2014) + +Learn to Program + with Scratch +(2014) -superscratchprogadv->learntoprogramwithscratch - - + +superscratchprogadv->learntoprogramwithscratch + + -learntoprogramwithscratch->kidintermediate - - + +learntoprogramwithscratch->kidintermediate + + -helpyoukidswithcomputercoding->kidintermediate - - + +helpyoukidswithcomputercoding->kidintermediate + + -makinggamespython + +makinggamespython - -Making Games with -Python & Pygame (2012) + +Making Games with +Python & Pygame (2012) -inventgamepython3->makinggamespython - - + +inventgamepython3->makinggamespython + + -adventuresinminecraft + +adventuresinminecraft - -Adventures in -Minecraft (2014) + +Adventures in +Minecraft (2014) -learntoprogramwithminecraft->adventuresinminecraft - - + +learntoprogramwithminecraft->adventuresinminecraft + + @@ -412,151 +482,173 @@ -foundation - -CS Foundation + +foundation + +CS Foundation -sicp2 + +sicp2 - -Structure and Interpretation -of Computer Programs -(SICP) 2nd Ed (1996) + +Structure and Interpretation +of Computer Programs +(SICP) 2nd Ed (1996) -foundation->sicp2 - - + +foundation->sicp2 + + -csapp3 + +csapp3 - -Computer Systems -(CSAPP) 3rd Ed (2015) + +Computer Systems +(CSAPP) 3rd Ed (2015) -foundation->csapp3 - - + +foundation->csapp3 + + -algorithm - -Algorithm + +algorithm + +Algorithm -clrs3 + +clrs3 - -Introduction to -Algorithms (CLRS) -3rd Ed (2009) + +Introduction to +Algorithms (CLRS) +3rd Ed (2009) -algorithm->clrs3 - - + +algorithm->clrs3 + + -algorithms4 + +algorithms4 - -Algorithms -4th Ed (2011) + +Algorithms +4th Ed (2011) -algorithm->algorithms4 - - + +algorithm->algorithms4 + + -csmath - -Mathematics for CS + +csmath + +Mathematics for CS -concretemaths2 + +concretemaths2 - -Concrete Mathematics -2nd Ed (1994) + +Concrete Mathematics +2nd Ed (1994) -csmath->concretemaths2 - - + +csmath->concretemaths2 + + -caaqa5 + +caaqa5 - -Computer Architecture -(CAAQA) 5th Ed (2011) + +Computer Architecture +(CAAQA) 5th Ed (2011) -sicp2->caaqa5 - - + +sicp2->caaqa5 + + -mos4 + +mos4 - -Modern Operating -System (MOS) -4th Ed (2014) + +Modern Operating +System (MOS) +4th Ed (2014) -sicp2->mos4 - - + +sicp2->mos4 + + -csapp3->caaqa5 - - + +csapp3->caaqa5 + + -csapp3->mos4 - - + +csapp3->mos4 + + -algorithms4->clrs3 - - + +algorithms4->clrs3 + + -computationalscieng + +computationalscieng - -Computational Science -and Engineering (2007) + +Computational Science +and Engineering (2007) -concretemaths2->computationalscieng - - + +concretemaths2->computationalscieng + + @@ -564,445 +656,512 @@ -cbegin - -C + +cbegin + +C -tcpl2 + +tcpl2 - -The C Programming -Language (TCPL) -2nd Ed (1988) + +The C Programming +Language (TCPL) +2nd Ed (1988) -cbegin->tcpl2 - - + +cbegin->tcpl2 + + -lua - -Lua + +lua + +Lua -programminginlua4 + +programminginlua4 - -Programming in Lua -4th Ed (2016) + +Programming in Lua +4th Ed (2016) -lua->programminginlua4 - - + +lua->programminginlua4 + + -csharp - -C# + +csharp + +C# -mvcsharpstepbystep8 + +mvcsharpstepbystep8 - -Microsoft Visual C# -Step by Step -8th Ed (2015) + +Microsoft Visual C# +Step by Step +8th Ed (2015) -csharp->mvcsharpstepbystep8 - - + +csharp->mvcsharpstepbystep8 + + -cppbegin - -Beginning C++ + +cppbegin + +Beginning C++ -cppprimer5 + +cppprimer5 - -C++ Primer -(CPPP) 5th Ed (2012) + +C++ Primer +(CPPP) 5th Ed (2012) -cppbegin->cppprimer5 - - + +cppbegin->cppprimer5 + + -tcpppl4 + +tcpppl4 - -The C++ Programming -Language (TCPPPL) -4th Ed (2014) + +The C++ Programming +Language (TCPPPL) +4th Ed (2014) -cppbegin->tcpppl4 - - + +cppbegin->tcpppl4 + + -cpppractice - -C++ Practice + +cpppractice + +C++ Practice -exceptionalcpp + +exceptionalcpp - -Exceptional C++ -(1999) + +Exceptional C++ +(1999) -cpppractice->exceptionalcpp - - + +cpppractice->exceptionalcpp + + -effectivecpp3 + +effectivecpp3 - -Effective C++ -3rd Ed (2005) + +Effective C++ +3rd Ed (2005) -cpppractice->effectivecpp3 - - + +cpppractice->effectivecpp3 + + -cpplibrary - -C++ Standard Library + +cpplibrary + +C++ Standard Library -cppstandardlibrary2 + +cppstandardlibrary2 - -The C++ Standard -Library 2nd Ed (2012) + +The C++ Standard +Library 2nd Ed (2012) -cpplibrary->cppstandardlibrary2 - - + +cpplibrary->cppstandardlibrary2 + + -cppadvance - -Advanced C++ + +cppadvance + +Advanced C++ -insidecppobjectmodel + +insidecppobjectmodel - -Inside the C++ -Object Model (1996) + +Inside the C++ +Object Model (1996) -cppadvance->insidecppobjectmodel - - + +cppadvance->insidecppobjectmodel + + -cpptemplates + +cpptemplates - -C++ Templates (2002) + +C++ Templates (2002) -cppadvance->cpptemplates - - + +cppadvance->cpptemplates + + -elementsofprogramming + +elementsofprogramming - -Elements of -Programming (2009) + +Elements of +Programming (2009) -cppadvance->elementsofprogramming - - + +cppadvance->elementsofprogramming + + -tcpl2->cppbegin - - + +tcpl2->cppbegin + + -cppprimer5->cpppractice - - + +cppprimer5->cpppractice + + -cppprimer5->cpplibrary - - + +cppprimer5->cpplibrary + + -tcpppl4->cpplibrary - - + +tcpppl4->cpplibrary + + -cppconcurrencyinaction + +cppconcurrencyinaction - -C++ Concurrency -in Action (2012) + +C++ Concurrency +in Action (2012) -cppstandardlibrary2->cppconcurrencyinaction - - + +cppstandardlibrary2->cppconcurrencyinaction + + -effectivestl + +effectivestl - -Effective STL (2001) + +Effective STL (2001) -cppstandardlibrary2->effectivestl - - + +cppstandardlibrary2->effectivestl + + -boostcpplibraries2 + +boostcpplibraries2 - -The Boost C++ -Libraries 2nd Ed (2014) + +The Boost C++ +Libraries 2nd Ed (2014) -cppconcurrencyinaction->boostcpplibraries2 - - + +cppconcurrencyinaction->boostcpplibraries2 + + -moreexceptionalcpp + +moreexceptionalcpp - -More Exceptional -C++ (2001) + +More Exceptional +C++ (2001) -exceptionalcpp->moreexceptionalcpp - - + +exceptionalcpp->moreexceptionalcpp + + -exceptionalcppstyle + +exceptionalcppstyle - -Exceptional C++ -Style (2004) + +Exceptional C++ +Style (2004) -moreexceptionalcpp->exceptionalcppstyle - - + +moreexceptionalcpp->exceptionalcppstyle + + -cppcodingstandard + +cppcodingstandard - -C++ Coding -Standards (2004) + +C++ Coding +Standards (2004) -exceptionalcppstyle->cppcodingstandard - - + +exceptionalcppstyle->cppcodingstandard + + -cppcodingstandard->cppadvance - - + +cppcodingstandard->cppadvance + + -moreeffectivecpp3 + +moreeffectivecpp3 - -More Effective -C++ (1996) + +More Effective +C++ (1996) -effectivecpp3->moreeffectivecpp3 - - + +effectivecpp3->moreeffectivecpp3 + + -effectivemoderncpp + +effectivemoderncpp - -Effective Modern -C++ (2014) + +Effective Modern +C++ (2014) -effectivecpp3->effectivemoderncpp - - + +effectivecpp3->effectivemoderncpp + + -moreeffectivecpp3->effectivemoderncpp - - + +moreeffectivecpp3->effectivemoderncpp + + -effectivemoderncpp->cppcodingstandard - - + +effectivemoderncpp->cppcodingstandard + + -optimizedcpp + +optimizedcpp - -Optimized C++ -(2016) + +Optimized C++ +(2016) -effectivemoderncpp->optimizedcpp - - + +effectivemoderncpp->optimizedcpp + + -optimizedcpp->cppadvance - - + +optimizedcpp->cppadvance + + -imperfectcpp + +imperfectcpp - -Imperfect C++ (2004) + +Imperfect C++ (2004) -insidecppobjectmodel->imperfectcpp - - + +insidecppobjectmodel->imperfectcpp + + -moderncppdesign + +moderncppdesign - -Modern C++ Design (2001) + +Modern C++ Design (2001) -cpptemplates->moderncppdesign - - + +cpptemplates->moderncppdesign + + -frommathtogeneric + +frommathtogeneric - -From Mathematics -to Generic Programming -(2014) + +From Mathematics +to Generic Programming +(2014) -elementsofprogramming->frommathtogeneric - - + +elementsofprogramming->frommathtogeneric + + -luaprogramminggems + +luaprogramminggems - -Lua Programming -Gems (2008) + +Lua Programming +Gems (2008) -programminginlua4->luaprogramminggems - - + +programminginlua4->luaprogramminggems + + -csharpindepth3 + +csharpindepth3 - -C# in Depth -3rd Ed (2013) + +C# in Depth +3rd Ed (2013) -mvcsharpstepbystep8->csharpindepth3 - - + +mvcsharpstepbystep8->csharpindepth3 + + -clrviacsharp4 + +clrviacsharp4 - -CLR via C# -4th Ed (2012) + +CLR via C# +4th Ed (2012) -csharpindepth3->clrviacsharp4 - - + +csharpindepth3->clrviacsharp4 + + @@ -1010,395 +1169,453 @@ -sebegin - -Beginning Software Development + +sebegin + +Beginning Software Development -mythicalmanmonth2 + +mythicalmanmonth2 - -The Mythical Man-Month -2nd Ed (1995) + +The Mythical Man-Month +2nd Ed (1995) -sebegin->mythicalmanmonth2 - - + +sebegin->mythicalmanmonth2 + + -sepractice - -Practice + +sepractice + +Practice -practiceofprogramming + +practiceofprogramming - -The Practice of -Programming (1999) + +The Practice of +Programming (1999) -sepractice->practiceofprogramming - - + +sepractice->practiceofprogramming + + -dp - -Design Pattern + +dp + +Design Pattern -agilesoftwaredev + +agilesoftwaredev - -Agile Software -Development (2002) + +Agile Software +Development (2002) -dp->agilesoftwaredev - - + +dp->agilesoftwaredev + + -headfirstdesignpatterns + +headfirstdesignpatterns - -Head First -Design Patterns (2004) + +Head First +Design Patterns (2004) -dp->headfirstdesignpatterns - - + +dp->headfirstdesignpatterns + + -uml - -UML + +uml + +UML -umldistilled3 + +umldistilled3 - -UML Distilled -3rd Ed (2003) + +UML Distilled +3rd Ed (2003) -uml->umldistilled3 - - + +uml->umldistilled3 + + -mythicalmanmonth2->sepractice - - + +mythicalmanmonth2->sepractice + + -mythicalmanmonth2->dp - - + +mythicalmanmonth2->dp + + -mythicalmanmonth2->uml - - + +mythicalmanmonth2->uml + + -codecomplete2 + +codecomplete2 - -Code Complete 2 (2004) + +Code Complete 2 (2004) -apidesignforcpp + +apidesignforcpp - -API Design for C++ -(2011) + +API Design for C++ +(2011) -codecomplete2->apidesignforcpp - - + +codecomplete2->apidesignforcpp + + -cleancode + +cleancode - -Clean Code (2008) + +Clean Code (2008) -codecomplete2->cleancode - - + +codecomplete2->cleancode + + -workingeffectivelylegacycode + +workingeffectivelylegacycode - -Working Effectively -with Legacy Code -(2004) + +Working Effectively +with Legacy Code +(2004) -codecomplete2->workingeffectivelylegacycode - - + +codecomplete2->workingeffectivelylegacycode + + -designpatterns + +designpatterns - -Design Patterns (1994) + +Design Patterns (1994) -agilesoftwaredev->designpatterns - - + +agilesoftwaredev->designpatterns + + -headfirstdesignpatterns->agilesoftwaredev - - + +headfirstdesignpatterns->agilesoftwaredev + + -refactoring + +refactoring - -Refactoring (1999) + +Refactoring (1999) -practiceofprogramming->refactoring - - + +practiceofprogramming->refactoring + + -refactoring->codecomplete2 - - + +refactoring->codecomplete2 + + -umluserguide2 + +umluserguide2 - -The Unified Modeling -Language User Guide -2nd Ed (2005) + +The Unified Modeling +Language User Guide +2nd Ed (2005) -umldistilled3->umluserguide2 - - + +umldistilled3->umluserguide2 + + -ooadwa3 + +ooadwa3 - -Object-Oriented Analysis -and Design with Applications -3rd Ed (2007) + +Object-Oriented Analysis +and Design with Applications +3rd Ed (2007) -umluserguide2->ooadwa3 - - + +umluserguide2->ooadwa3 + + -mathbegin - -Beginning Mathematics for Game Programming + +mathbegin + +Beginning Mathematics for Game Programming -foundationsgedmath + +foundationsgedmath - -Foundations of Game -Engine Development, -Vol 1: Mathematics -(2016) + +Foundations of Game +Engine Development, +Vol 1: Mathematics +(2016) -mathbegin->foundationsgedmath - - + +mathbegin->foundationsgedmath + + -math3dcpcg3 + +math3dcpcg3 - -Mathematics for 3D -Game Programming and -Computer Graphics -3rd Ed (2011) + +Mathematics for 3D +Game Programming and +Computer Graphics +3rd Ed (2011) -mathbegin->math3dcpcg3 - - + +mathbegin->math3dcpcg3 + + -3dmathprimer2 + +3dmathprimer2 - -3D Math Primer for -Graphics and Game -Development 2nd Ed (2011) + +3D Math Primer for +Graphics and Game +Development 2nd Ed (2011) -mathbegin->3dmathprimer2 - - + +mathbegin->3dmathprimer2 + + -essentialmaths3 + +essentialmaths3 - -Essential Mathematics -for Games and -Interactive Applications -3rd Ed (2011) + +Essential Mathematics +for Games and +Interactive Applications +3rd Ed (2011) -mathbegin->essentialmaths3 - - + +mathbegin->essentialmaths3 + + -mathadvanced - -Advanced Mathematics for Game Programming + +mathadvanced + +Advanced Mathematics for Game Programming -geometricalgebra + +geometricalgebra - -Geometric Algebra for -Computer Science (2007) + +Geometric Algebra for +Computer Science (2007) -mathadvanced->geometricalgebra - - + +mathadvanced->geometricalgebra + + -geometrictools + +geometrictools - -Geometric Tools for -Computer Graphics -(2002) + +Geometric Tools for +Computer Graphics +(2002) -mathadvanced->geometrictools - - + +mathadvanced->geometrictools + + -visualizingquaternions + +visualizingquaternions - -Visualizing Quaternions -(2006) + +Visualizing Quaternions +(2006) -mathadvanced->visualizingquaternions - - + +mathadvanced->visualizingquaternions + + -divgradcurl4 + +divgradcurl4 - -Div, Grad, Curl -and all That -4th Ed (2004) + +Div, Grad, Curl +and all That +4th Ed (2004) -mathadvanced->divgradcurl4 - - + +mathadvanced->divgradcurl4 + + -foundationsgedmath->mathadvanced - - + +foundationsgedmath->mathadvanced + + -math3dcpcg3->mathadvanced - - + +math3dcpcg3->mathadvanced + + -3dmathprimer2->mathadvanced - - + +3dmathprimer2->mathadvanced + + -essentialmaths3->mathadvanced - - + +essentialmaths3->mathadvanced + + -computationalgeometry + +computationalgeometry - -Computational Geometry - 3rd Ed (2008) + +Computational Geometry + 3rd Ed (2008) -geometrictools->computationalgeometry - - + +geometrictools->computationalgeometry + + @@ -1406,469 +1623,539 @@ -gpbegin - -Beginning Game Programming + +gpbegin + +Beginning Game Programming -scratch - -From Windows/DirectX + +scratch + +From Windows/DirectX -gpbegin->scratch - - + +gpbegin->scratch + + -unity - -From Unity + +unity + +From Unity -gpbegin->unity - - + +gpbegin->unity + + -unreal - -From Unreal + +unreal + +From Unreal -gpbegin->unreal - - + +gpbegin->unreal + + -cocos2dx - -From Cocos2d-X + +cocos2dx + +From Cocos2d-X -gpbegin->cocos2dx - - + +gpbegin->cocos2dx + + -windowsgp2 + +windowsgp2 - -Tricks of the Windows -Game Programming -Gurus 2nd Ed (2002) + +Tricks of the Windows +Game Programming +Gurus 2nd Ed (2002) -scratch->windowsgp2 - - + +scratch->windowsgp2 + + -gamecodingcomplete4 + +gamecodingcomplete4 - -Game Coding -Complete -4th Ed (2012) + +Game Coding +Complete +4th Ed (2012) -scratch:se->gamecodingcomplete4 - - + +scratch:se->gamecodingcomplete4 + + -introtogdprodev + +introtogdprodev - -Introduction to Game -Design, Prototyping, -and Development (2014) + +Introduction to Game +Design, Prototyping, +and Development (2014) -unity->introtogdprodev - - + +unity->introtogdprodev + + -learninguegd + +learninguegd - -Learning Unreal Engine -Game Development -(2015) + +Learning Unreal Engine +Game Development +(2015) -unreal->learninguegd - - + +unreal->learninguegd + + -cocos2dxbyexample2 + +cocos2dxbyexample2 - -Cocos2d-X -by Example (2015) + +Cocos2d-X +by Example (2015) -cocos2dx->cocos2dxbyexample2 - - + +cocos2dx->cocos2dxbyexample2 + + -gpintermediate - -Intermediate Game Programming + +gpintermediate + +Intermediate Game Programming -gpalgorithmstechniques + +gpalgorithmstechniques - -Game Programming -Algorithms and -Techniques (2013) + +Game Programming +Algorithms and +Techniques (2013) -gpintermediate->gpalgorithmstechniques - - + +gpintermediate->gpalgorithmstechniques + + -crossplatformgp + +crossplatformgp - -Cross-Platform Game -Programming (2005) + +Cross-Platform Game +Programming (2005) -gpintermediate->crossplatformgp - - + +gpintermediate->crossplatformgp + + -buildingfpsgameunity + +buildingfpsgameunity - -Building an FPS -Game with Unity (2015) + +Building an FPS +Game with Unity (2015) -gpintermediate->buildingfpsgameunity - - + +gpintermediate->buildingfpsgameunity + + -agumentedreality + +agumentedreality - -Augmented Reality -(2016) + +Augmented Reality +(2016) -gpintermediate->agumentedreality - - + +gpintermediate->agumentedreality + + -gpmisc - -Game Programming Articles + +gpmisc + +Game Programming Articles -gpgemsbest + +gpgemsbest - -Best of Game -Programming -Gems (2008) + +Best of Game +Programming +Gems (2008) -gpmisc->gpgemsbest - - + +gpmisc->gpgemsbest + + -beginninggp + +beginninggp - -Beginning Game -Programming (2009) + +Beginning Game +Programming (2009) -gpmisc->beginninggp - - + +gpmisc->beginninggp + + -gamecodingcomplete4->gpintermediate - - + +gamecodingcomplete4->gpintermediate + + -unityinaction + +unityinaction - -Unity in Action (2015) + +Unity in Action (2015) -introtogdprodev->unityinaction - - + +introtogdprodev->unityinaction + + -unityinaction->gpintermediate - - + +unityinaction->gpintermediate + + -blueprintsvisualscripting + +blueprintsvisualscripting - -Blueprints Visual Scripting -for Unreal Engine (2015) + +Blueprints Visual Scripting +for Unreal Engine (2015) -learninguegd->blueprintsvisualscripting - - + +learninguegd->blueprintsvisualscripting + + -blueprintsvisualscripting->gpintermediate - - + +blueprintsvisualscripting->gpintermediate + + -cocos2dxbyexample2->gpintermediate - - + +cocos2dxbyexample2->gpintermediate + + -gameprogrammingpatterns + +gameprogrammingpatterns - -Game Programming -Patterns (2014) + +Game Programming +Patterns (2014) -gpalgorithmstechniques->gameprogrammingpatterns - - + +gpalgorithmstechniques->gameprogrammingpatterns + + -gpgoldenrules + +gpgoldenrules - -Game Programming -Golden Rules (2004) + +Game Programming +Golden Rules (2004) -gameprogrammingpatterns->gpgoldenrules - - + +gameprogrammingpatterns->gpgoldenrules + + -gpgoldenrules->gpmisc - - + +gpgoldenrules->gpmisc + + -androidndkgdcookbook + +androidndkgdcookbook - -Android NDK Game -Development Cookbook -(2013) + +Android NDK Game +Development Cookbook +(2013) -crossplatformgp->androidndkgdcookbook - - + +crossplatformgp->androidndkgdcookbook + + -unityvrprojects + +unityvrprojects - -Unity Virtual -Reality Projects (2015) + +Unity Virtual +Reality Projects (2015) -buildingfpsgameunity->unityvrprojects - - + +buildingfpsgameunity->unityvrprojects + + -practicalaugmentedreality + +practicalaugmentedreality - -Practical Augmented -Reality (2016) + +Practical Augmented +Reality (2016) -agumentedreality->practicalaugmentedreality - - + +agumentedreality->practicalaugmentedreality + + -gpgems + +gpgems - -Game Programming -Gems (2000) + +Game Programming +Gems (2000) -gpgemsbest->gpgems - - + +gpgemsbest->gpgems + + -advancedgp + +advancedgp - -Advanced Game -Programming (2009) + +Advanced Game +Programming (2009) -beginninggp->advancedgp - - + +beginninggp->advancedgp + + -gpgems2 + +gpgems2 - -Game Programming -Gems (2001) + +Game Programming +Gems (2001) -gpgems->gpgems2 - - + +gpgems->gpgems2 + + -gpgems3 + +gpgems3 - -Game Programming -Gems (2002) + +Game Programming +Gems (2002) -gpgems2->gpgems3 - - + +gpgems2->gpgems3 + + -gpgems4 + +gpgems4 - -Game Programming -Gems (2004) + +Game Programming +Gems (2004) -gpgems3->gpgems4 - - + +gpgems3->gpgems4 + + -gpgems5 + +gpgems5 - -Game Programming -Gems (2005) + +Game Programming +Gems (2005) -gpgems4->gpgems5 - - + +gpgems4->gpgems5 + + -gpgems6 + +gpgems6 - -Game Programming -Gems (2006) + +Game Programming +Gems (2006) -gpgems5->gpgems6 - - + +gpgems5->gpgems6 + + -gpgems7 + +gpgems7 - -Game Programming -Gems (2008) + +Game Programming +Gems (2008) -gpgems6->gpgems7 - - + +gpgems6->gpgems7 + + -gpgems8 + +gpgems8 - -Game Programming -Gems (2010) + +Game Programming +Gems (2010) -gpgems7->gpgems8 - - + +gpgems7->gpgems8 + + @@ -1877,1175 +2164,1364 @@ -gebegin - -Beginning Game Engine Development + +gebegin + +Beginning Game Engine Development -gameenginearchitecture2 + +gameenginearchitecture2 - -Game Engine -Architecture (GEA) -2nd Ed (2014) + +Game Engine +Architecture (GEA) +2nd Ed (2014) -gebegin->gameenginearchitecture2 - - + +gebegin->gameenginearchitecture2 + + -gearticles - -Game Engine Articles + +gearticles + +Game Engine Articles -gameenginegems1 + +gameenginegems1 - -Game Engine -Gems 1 (2010) + +Game Engine +Gems 1 (2010) -gearticles->gameenginegems1 - - + +gearticles->gameenginegems1 + + -gescript - -Script Engine + +gescript + +Script Engine -gamescriptingmastery + +gamescriptingmastery - -Game Scripting -Mastery (2002) + +Game Scripting +Mastery (2002) -gescript->gamescriptingmastery - - + +gescript->gamescriptingmastery + + -geoptimization - -Optimization + +geoptimization + +Optimization -videogameoptimization + +videogameoptimization - -Video Game -Optimization (2010) + +Video Game +Optimization (2010) -geoptimization->videogameoptimization - - + +geoptimization->videogameoptimization + + -getool - -Tool Development + +getool + +Tool Development -gamedevtools + +gamedevtools - -Game Development -Tools (2011) + +Game Development +Tools (2011) -getool->gamedevtools - - + +getool->gamedevtools + + -gameenginearchitecture2->gearticles - - + +gameenginearchitecture2->gearticles + + -gameenginearchitecture2->gescript - - + +gameenginearchitecture2->gescript + + -gameenginearchitecture2->geoptimization - - + +gameenginearchitecture2->geoptimization + + -gameenginearchitecture2->getool - - + +gameenginearchitecture2->getool + + -3dgameenginearchitecture + +3dgameenginearchitecture - -3D Game Engine -Architecture -(2004) + +3D Game Engine +Architecture +(2004) -gameenginearchitecture2->3dgameenginearchitecture - - + +gameenginearchitecture2->3dgameenginearchitecture + + -gameenginedesign2 + +gameenginedesign2 - -3D Game Engine -Design -2nd Ed (2006) + +3D Game Engine +Design +2nd Ed (2006) -3dgameenginearchitecture->gameenginedesign2 - - + +3dgameenginearchitecture->gameenginedesign2 + + -gameenginegems2 + +gameenginegems2 - -Game Engine -Gems 2 (2011) + +Game Engine +Gems 2 (2011) -gameenginegems1->gameenginegems2 - - + +gameenginegems1->gameenginegems2 + + -gameenginegems3 + +gameenginegems3 - -Game Engine -Gems 3 (2016) + +Game Engine +Gems 3 (2016) -gameenginegems2->gameenginegems3 - - + +gameenginegems2->gameenginegems3 + + -languageimplpatterns + +languageimplpatterns - -Language Implementation -Patterns (2010) + +Language Implementation +Patterns (2010) -gamescriptingmastery->languageimplpatterns - - + +gamescriptingmastery->languageimplpatterns + + -garbagecollectionhandbook + +garbagecollectionhandbook - -The Garbage Collection -Handbook (2011) + +The Garbage Collection +Handbook (2011) -languageimplpatterns->garbagecollectionhandbook - - + +languageimplpatterns->garbagecollectionhandbook + + -unity5gameoptimization + +unity5gameoptimization - -Unity 5 Game -Optimization (2015) + +Unity 5 Game +Optimization (2015) -hackersdelight2 + +hackersdelight2 - -Hacker's Delight -2nd Ed (2012) + +Hacker's Delight +2nd Ed (2012) -unity5gameoptimization->hackersdelight2 - - + +unity5gameoptimization->hackersdelight2 + + -videogameoptimization->unity5gameoptimization - - + +videogameoptimization->unity5gameoptimization + + -modernx86assembly + +modernx86assembly - -Modern X86 -Assembly Language -Programming (2014) + +Modern X86 +Assembly Language +Programming (2014) -hackersdelight2->modernx86assembly - - + +hackersdelight2->modernx86assembly + + -gpgpu + +gpgpu - -GPGPU Programming -for Games and Science -(2014) + +GPGPU Programming +for Games and Science +(2014) -hackersdelight2->gpgpu - - + +hackersdelight2->gpgpu + + -vectorgamemathprocessors + +vectorgamemathprocessors - -Vector Games -Math Processors -(2002) + +Vector Games +Math Processors +(2002) -hackersdelight2->vectorgamemathprocessors - - + +hackersdelight2->vectorgamemathprocessors + + -designinguxgamedevtools + +designinguxgamedevtools - -Designing the User -Experience of Game -Development Tools (2015) + +Designing the User +Experience of Game +Development Tools (2015) -gamedevtools->designinguxgamedevtools - - + +gamedevtools->designinguxgamedevtools + + -cgbegin - -Beginning CG Programming + +cgbegin + +Beginning CG Programming -rt3drendering + +rt3drendering - -Real-Time 3D -Rendering with DirectX -and HLSL (2014) + +Real-Time 3D +Rendering with DirectX +and HLSL (2014) -cgbegin->rt3drendering - - + +cgbegin->rt3drendering + + -3dgpdx12 + +3dgpdx12 - -Introduction to -3D Game Programming - with DirectX 12 (2016) + +Introduction to +3D Game Programming + with DirectX 12 (2016) -cgbegin->3dgpdx12 - - + +cgbegin->3dgpdx12 + + -oglguide9 + +oglguide9 - -OpenGL Programming -Guide 9th Ed (2016) + +OpenGL Programming +Guide 9th Ed (2016) -cgbegin->oglguide9 - - + +cgbegin->oglguide9 + + -cgtheory - -Beginning CG theory + +cgtheory + +Beginning CG theory -fundamentalscg4 + +fundamentalscg4 - -Fundamentals of -Computer Graphics -4th Ed (2015) + +Fundamentals of +Computer Graphics +4th Ed (2015) -cgtheory->fundamentalscg4 - - + +cgtheory->fundamentalscg4 + + -cgpp3 + +cgpp3 - -Computer Graphics -Principles and Practice -(CGP&P) 3rd Ed (2013) + +Computer Graphics +Principles and Practice +(CGP&P) 3rd Ed (2013) -cgtheory->cgpp3 - - + +cgtheory->cgpp3 + + -pdis + +pdis - -Principles of Digital -Image Synthesis -(PODIS) (1995) + +Principles of Digital +Image Synthesis +(PODIS) (1995) -cgtheory->pdis - - + +cgtheory->pdis + + -digitalimageprocessing3 + +digitalimageprocessing3 - -Digital Image -Processing -(DIP) 3rd Ed (2007) + +Digital Image +Processing +(DIP) 3rd Ed (2007) -cgtheory->digitalimageprocessing3 - - + +cgtheory->digitalimageprocessing3 + + -cgadvanced - -Advanced CG + +cgadvanced + +Advanced CG -realtimerendering - -Real-Time Rendering + +realtimerendering + +Real-Time Rendering -cgadvanced->realtimerendering - - + +cgadvanced->realtimerendering + + -offlinerendering - -Offline Rendering + +offlinerendering + +Offline Rendering -cgadvanced->offlinerendering - - + +cgadvanced->offlinerendering + + -cgtech - -CG Technologies + +cgtech + +CG Technologies -cgadvanced->cgtech - - + +cgadvanced->cgtech + + -rtr3 + +rtr3 - -Real-Time Rendering - (RTR) 3rd Ed (2008) + +Real-Time Rendering + (RTR) 3rd Ed (2008) -realtimerendering->rtr3 - - + +realtimerendering->rtr3 + + -tricks3dgpgurus + +tricks3dgpgurus - -Tricks of the 3D -Game Programming -Gurus (2003) + +Tricks of the 3D +Game Programming +Gurus (2003) -realtimerendering->tricks3dgpgurus - - + +realtimerendering->tricks3dgpgurus + + -pbrt3 - - -Physically Based -Rendering (PBRT) -3rd Ed (2016) + +pbrt3 + + +Physically Based +Rendering (PBRT) +3rd Ed (2016) -offlinerendering->pbrt3 - - + +offlinerendering->pbrt3 + + -raytracingfromgroundup - - -Ray Tracing from -the Ground Up -(2007) + +raytracingfromgroundup + + +Ray Tracing from +the Ground Up +(2007) -offlinerendering->raytracingfromgroundup - - + +offlinerendering->raytracingfromgroundup + + -d3d - -Direct3D + +d3d + +Direct3D -practiald3d11 + +practiald3d11 - -Practical Rendering -and Computation -with Direct3D 11 (2011) + +Practical Rendering +and Computation +with Direct3D 11 (2011) -d3d->practiald3d11 - - + +d3d->practiald3d11 + + -ogl - -OpenGL + +ogl + +OpenGL -oglsuper7 + +oglsuper7 - -OpenGL Super Bible -7th Ed (2015) + +OpenGL Super Bible +7th Ed (2015) -ogl->oglsuper7 - - + +ogl->oglsuper7 + + -cgmisc - -CG Articles + +cgmisc + +CG Articles -cgtech->cgmisc - - + +cgtech->cgmisc + + -texturingmodeling3 - - -Texturing and Modeling -(2002) + +texturingmodeling3 + + +Texturing and Modeling +(2002) -cgtech->texturingmodeling3 - - + +cgtech->texturingmodeling3 + + -lod - - -Level of Detail -for 3D Graphics (2002) + +lod + + +Level of Detail +for 3D Graphics (2002) -cgtech->lod - - + +cgtech->lod + + -npr - - -Non-Photorealistic -Rendering (2001) + +npr + + +Non-Photorealistic +Rendering (2001) -cgtech->npr - - + +cgtech->npr + + -graphicsgems - - -Graphics Gems (1990) + +graphicsgems + + +Graphics Gems (1990) -cgmisc->graphicsgems - - + +cgmisc->graphicsgems + + -blinn1 - - -Jim Blinn's Corner: -A Trip Down -the Graphics Pipeline (1997) + +blinn1 + + +Jim Blinn's Corner: +A Trip Down +the Graphics Pipeline (1997) -cgmisc->blinn1 - - + +cgmisc->blinn1 + + -rt3drendering->cgtheory - - + +rt3drendering->cgtheory + + -3dgpdx12->cgtheory - - + +3dgpdx12->cgtheory + + -oglguide9->cgtheory - - + +oglguide9->cgtheory + + -fundamentalscg4->cgadvanced - - + +fundamentalscg4->cgadvanced + + -cgpp3->cgadvanced - - + +cgpp3->cgadvanced + + -pdis->cgadvanced - - + +pdis->cgadvanced + + -digitalimageprocessing3->cgadvanced - - + +digitalimageprocessing3->cgadvanced + + -graphicsshaders2 + +graphicsshaders2 - -Graphics Shaders -2nd Ed (2011) + +Graphics Shaders +2nd Ed (2011) -ogles3guide2 + +ogles3guide2 - -OpenGL ES 3.0 -Programming Guide -2nd Ed (2014) + +OpenGL ES 3.0 +Programming Guide +2nd Ed (2014) -graphicsshaders2->ogles3guide2 - - + +graphicsshaders2->ogles3guide2 + + -glsl3 + +glsl3 - -OpenGL Shading -Language 3rd Ed (2009) + +OpenGL Shading +Language 3rd Ed (2009) -glsl3->ogles3guide2 - - + +glsl3->ogles3guide2 + + -oglsuper7->graphicsshaders2 - - + +oglsuper7->graphicsshaders2 + + -oglsuper7->glsl3 - - + +oglsuper7->glsl3 + + -oglinsights + +oglinsights - -OpenGL Insights (2012) + +OpenGL Insights (2012) -ogles3guide2->oglinsights - - + +ogles3guide2->oglinsights + + -vulkanguide + +vulkanguide - -Vulkan Programming -Guide (2016) + +Vulkan Programming +Guide (2016) -oglinsights->vulkanguide - - + +oglinsights->vulkanguide + + -rtr3->d3d - - + +rtr3->d3d + + -rtr3->ogl - - + +rtr3->ogl + + -realtimeshadows + +realtimeshadows - -Real-Time -Shadows (2011) + +Real-Time +Shadows (2011) -rtr3->realtimeshadows - - + +rtr3->realtimeshadows + + -rtvolumegraphics + +rtvolumegraphics - -Real-Time Volume -Graphics (2006) + +Real-Time Volume +Graphics (2006) -rtr3->rtvolumegraphics - - + +rtr3->rtvolumegraphics + + -graphicsprogrammingmethods + +graphicsprogrammingmethods - -Graphics Programming -Methods (2003) + +Graphics Programming +Methods (2003) -rtr3->graphicsprogrammingmethods - - + +rtr3->graphicsprogrammingmethods + + -gpugems + +gpugems - -GPU Gems (2004) + +GPU Gems (2004) -graphicsprogrammingmethods->gpugems - - + +graphicsprogrammingmethods->gpugems + + -gpugems2 + +gpugems2 - -GPU Gems 2 (2005) + +GPU Gems 2 (2005) -gpugems->gpugems2 - - + +gpugems->gpugems2 + + -gpugems3 + +gpugems3 - -GPU Gems 3 (2007) + +GPU Gems 3 (2007) -gpugems2->gpugems3 - - + +gpugems2->gpugems3 + + -gpupro + +gpupro - -GPU Pro (2010) + +GPU Pro (2010) -gpugems3->gpupro - - + +gpugems3->gpupro + + -gpupro2 + +gpupro2 - -GPU Pro 2 (2011) + +GPU Pro 2 (2011) -gpupro->gpupro2 - - + +gpupro->gpupro2 + + -gpupro3 + +gpupro3 - -GPU Pro 3 (2012) + +GPU Pro 3 (2012) -gpupro2->gpupro3 - - + +gpupro2->gpupro3 + + -gpupro4 + +gpupro4 - -GPU Pro 4 (2013) + +GPU Pro 4 (2013) -gpupro3->gpupro4 - - + +gpupro3->gpupro4 + + -gpupro5 + +gpupro5 - -GPU Pro 5 (2014) + +GPU Pro 5 (2014) -gpupro4->gpupro5 - - + +gpupro4->gpupro5 + + -gpupro6 + +gpupro6 - -GPU Pro 6 (2015) + +GPU Pro 6 (2015) -gpupro5->gpupro6 - - + +gpupro5->gpupro6 + + -gpupro7 + +gpupro7 - -GPU Pro 7 (2016) + +GPU Pro 7 (2016) -gpupro6->gpupro7 - - + +gpupro6->gpupro7 + + + + +gpuzen + + +GPU Zen (2017) + + + + + +gpupro7->gpuzen + + + + + -advancedgi2 - - -Advanced -Global Illumination -2nd Ed (2006) + +advancedgi2 + + +Advanced +Global Illumination +2nd Ed (2006) -pbrt3->advancedgi2 - - + +pbrt3->advancedgi2 + + -raytracingfromgroundup->pbrt3 - - + +raytracingfromgroundup->pbrt3 + + -productionvolumerendering - - -Production Volume -Rendering (2012) + +productionvolumerendering + + +Production Volume +Rendering (2012) -advancedgi2->productionvolumerendering - - + +advancedgi2->productionvolumerendering + + -polygonmeshprocessing - - -Polygon Mesh -Processing (2010) + +polygonmeshprocessing + + +Polygon Mesh +Processing (2010) -texturingmodeling3->polygonmeshprocessing - - + +texturingmodeling3->polygonmeshprocessing + + -3denginedesignvirtualglobes - - -3D Engine Design -for Virtual Globes (2011) + +3denginedesignvirtualglobes + + +3D Engine Design +for Virtual Globes (2011) -lod->3denginedesignvirtualglobes - - + +lod->3denginedesignvirtualglobes + + -isosurfaces - - -Isosurfaces (2013) + +isosurfaces + + +Isosurfaces (2013) -polygonmeshprocessing->isosurfaces - - + +polygonmeshprocessing->isosurfaces + + -npcg - - -Non-Photorealistic -Computer Graphics -(2002) + +npcg + + +Non-Photorealistic +Computer Graphics +(2002) -npr->npcg - - + +npr->npcg + + -graphicsgems2 - - -Graphics Gems II (1991) + +graphicsgems2 + + +Graphics Gems II (1991) -graphicsgems->graphicsgems2 - - + +graphicsgems->graphicsgems2 + + -graphicsgems3 - - -Graphics Gems III (1994) + +graphicsgems3 + + +Graphics Gems III (1994) -graphicsgems2->graphicsgems3 - - + +graphicsgems2->graphicsgems3 + + -graphicsgems4 - - -Graphics Gems IV (1994) + +graphicsgems4 + + +Graphics Gems IV (1994) -graphicsgems3->graphicsgems4 - - + +graphicsgems3->graphicsgems4 + + -graphicsgems5 - - -Graphics Gems V (1995) + +graphicsgems5 + + +Graphics Gems V (1995) -graphicsgems4->graphicsgems5 - - + +graphicsgems4->graphicsgems5 + + -blinn2 - - -Jim Blinn's Corner: -Dirty Pixels (1998) + +blinn2 + + +Jim Blinn's Corner: +Dirty Pixels (1998) -blinn1->blinn2 - - + +blinn1->blinn2 + + -glassenernotebook1 - - -Andrew Glassner's -Notebook (1999) + +glassenernotebook1 + + +Andrew Glassner's +Notebook (1999) -blinn2->glassenernotebook1 - - + +blinn2->glassenernotebook1 + + -blinn3 - - -Jim Blinn's Corner: -Notation, Notation, -Notation (2002) + +blinn3 + + +Jim Blinn's Corner: +Notation, Notation, +Notation (2002) -glassenernotebook2 - - -Andrew Glassner's -Other Notebook (2002) + +glassenernotebook2 + + +Andrew Glassner's +Other Notebook (2002) -blinn3->glassenernotebook2 - - + +blinn3->glassenernotebook2 + + -glassenernotebook1->blinn3 - - + +glassenernotebook1->blinn3 + + -magiccg - - -The Magic of -Computer Graphics (2011) + +magiccg + + +The Magic of +Computer Graphics (2011) -glassenernotebook2->magiccg - - + +glassenernotebook2->magiccg + + - - -audiobegin - -Game Audio Programming + +audiobegin + +Game Audio Programming -gameaudioprogramming - - -Game Audio -Programming (2016) + +gameaudioprogramming + + +Game Audio +Programming (2016) -audiobegin->gameaudioprogramming - - + +audiobegin->gameaudioprogramming + + -gettingstartedcppaudio - - -Getting Started -with C++ Audio Programming -for Game Development (2013) + +gettingstartedcppaudio + + +Getting Started +with C++ Audio Programming +for Game Development (2013) -audiobegin->gettingstartedcppaudio - - + +audiobegin->gettingstartedcppaudio + + @@ -3054,310 +3530,389 @@ -animbegin - -Beginning Game Animation Programming + +animbegin + +Beginning Game Animation Programming -natureofcode - - -The Nature of Code -(2012) + +natureofcode + + +The Nature of Code +(2012) -animbegin->natureofcode - - + +animbegin->natureofcode + + -characteranimation - - -Character Animation -with Direct3D (2011) + +characteranimation + + +Character Animation +with Direct3D (2011) -animbegin->characteranimation - - + +animbegin->characteranimation + + -rt3dcharacteranimation - - -Real-time 3D -Character Animation -with Visual C++ (2001) + +rt3dcharacteranimation + + +Real-time 3D +Character Animation +with Visual C++ (2001) -animbegin->rt3dcharacteranimation - - + +animbegin->rt3dcharacteranimation + + -animadvanced - -Advanced Game Animation Programming + +animadvanced + +Advanced Game Animation Programming -fluid - -Fluid Animation/Simulation + +fluid + +Fluid Animation/Simulation -animadvanced->fluid - - + +animadvanced->fluid + + -gameik - - -Game Inverse -Kinematics (2013) + +gameik + + +Game Inverse +Kinematics (2013) -animadvanced->gameik - - + +animadvanced->gameik + + -physicsbasedanimation - - -Physics Based -Animation (2005) + +physicsbasedanimation + + +Physics Based +Animation (2005) -animadvanced->physicsbasedanimation - - + +animadvanced->physicsbasedanimation + + -rtcameras - - -Real-Time Cameras -(2009) + +rtcameras + + +Real-Time Cameras +(2009) -animadvanced->rtcameras - - + +animadvanced->rtcameras + + -phybegin - -Beginning Game Physics Programming + +phybegin + +Beginning Game Physics Programming -phybegin->natureofcode - - + +phybegin->natureofcode + + -physicsforgameprogrammers - - -Physics for Game -Programmers (2003) + +physicsforgameprogrammers + + +Physics for Game +Programmers (2003) -phybegin->physicsforgameprogrammers - - + +phybegin->physicsforgameprogrammers + + -physicsforgamedevelopers2 - - -Physics for Game -Developers 2nd Ed (2013) + +physicsforgamedevelopers2 + + +Physics for Game +Developers 2nd Ed (2013) -phybegin->physicsforgamedevelopers2 - - + +phybegin->physicsforgamedevelopers2 + + -phyadvanced - -Advanced Game Physics Programming + +phyadvanced + +Advanced Game Physics Programming -phyadvanced->fluid - - + +phyadvanced->fluid + + - -gamephysicspearls - - -Game Physics Pearls -(2010) + + +fpbma + + +Foundations of Physically +Based Modeling and +Animation (2017) - -phyadvanced->gamephysicspearls - - + + +phyadvanced->fpbma + + - -taofluidanimation - - -The Art of -Fluid Animation (2015) + + +fluidenginedev + + +Fluid Engine Development (2016) - -fluid->taofluidanimation - - + + +fluid->fluidenginedev + + -computeranimation3 - - -Computer Animation -3rd Ed (2012) + +computeranimation3 + + +Computer Animation +3rd Ed (2012) -characteranimation->computeranimation3 - - + +characteranimation->computeranimation3 + + -rt3dcharacteranimation->computeranimation3 - - + +rt3dcharacteranimation->computeranimation3 + + -computeranimation3->animadvanced - - + +computeranimation3->animadvanced + + -physicsforgameprogrammers->physicsforgamedevelopers2 - - + +physicsforgameprogrammers->physicsforgamedevelopers2 + + -physicsmodeling - - -Physics Modeling -for Game Programmers (2004) + +physicsmodeling + + +Physics Modeling +for Game Programmers (2004) -physicsforgameprogrammers->physicsmodeling - - + +physicsforgameprogrammers->physicsmodeling + + -physicsforgamedevelopers2->phyadvanced - - + +physicsforgamedevelopers2->phyadvanced + + -physicsmodeling->phyadvanced - - + +physicsmodeling->phyadvanced + + + + + +gamephysicspearls + + +Game Physics Pearls +(2010) + + + + + +fpbma->gamephysicspearls + + -gamephysicsenginedev2 - - -Game Physics Engine -Development 2nd Ed (2010) + +gamephysicsenginedev2 + + +Game Physics Engine +Development 2nd Ed (2010) -gamephysics2 - - -Game Physics 2nd Ed (2010) + +gamephysics2 + + +Game Physics 2nd Ed (2010) -gamephysicsenginedev2->gamephysics2 - - + +gamephysicsenginedev2->gamephysics2 + + -collisiondetection3denv - - -Collision Detection -in Interactive 3D -Environments (2003) + +collisiondetection3denv + + +Collision Detection +in Interactive 3D +Environments (2003) -rtcollisiondetection - - -Real-Time Collision -Detection (2004) + +rtcollisiondetection + + +Real-Time Collision +Detection (2004) -collisiondetection3denv->rtcollisiondetection - - + +collisiondetection3denv->rtcollisiondetection + + -gamephysicspearls->gamephysicsenginedev2 - - + +gamephysicspearls->gamephysicsenginedev2 + + -gamephysicspearls->collisiondetection3denv - - + +gamephysicspearls->collisiondetection3denv + + + + + +taofluidanimation + + +The Art of +Fluid Animation (2015) + + + + + +fluidenginedev->taofluidanimation + + -fluidsimulationforcg2 - - -Fluid Simulation -for Computer Graphics -2nd Ed (2015) + +fluidsimulationforcg2 + + +Fluid Simulation +for Computer Graphics +2nd Ed (2015) -taofluidanimation->fluidsimulationforcg2 - - + +taofluidanimation->fluidsimulationforcg2 + + @@ -3366,452 +3921,534 @@ -aibegin - -Beginning Game AI + +aibegin + +Beginning Game AI -aiforgames2 - - -Artificial Intelligence -for Games 2nd Ed (2009) + +aiforgames2 + + +Artificial Intelligence +for Games 2nd Ed (2009) -aibegin->aiforgames2 - - + +aibegin->aiforgames2 + + -aiforgd - - -AI for Game -Developers (2004) + +aiforgd + + +AI for Game +Developers (2004) -aibegin->aiforgd - - + +aibegin->aiforgd + + -proggameaibyexample - - -Programming Game -AI By Example (2004) + +proggameaibyexample + + +Programming Game +AI By Example (2004) -aibegin->proggameaibyexample - - + +aibegin->proggameaibyexample + + -unityaigp2 - - -Unity AI Game -Programming 2nd Ed (2015) + +unityaigp2 + + +Unity AI Game +Programming 2nd Ed (2015) -aibegin->unityaigp2 - - + +aibegin->unityaigp2 + + -aiintermediate - -Intermediate Game AI + +aiintermediate + +Intermediate Game AI -aima3 - - -Artificial Intelligence -Modern Approach -(AIMA) 3rd Ed (2009) + +aima3 + + +Artificial Intelligence +Modern Approach +(AIMA) 3rd Ed (2009) -aiintermediate->aima3 - - + +aiintermediate->aima3 + + -behavioralmathforgameai - - -Behavioral Mathematics -for Game AI (2009) + +behavioralmathforgameai + + +Behavioral Mathematics +for Game AI (2009) -aiintermediate->behavioralmathforgameai - - + +aiintermediate->behavioralmathforgameai + + -aimisc - -Game AI Articles + +aimisc + +Game AI Articles -aigpwisdom - - -AI Game Programming -Wisdom (2002) + +aigpwisdom + + +AI Game Programming +Wisdom (2002) -aimisc->aigpwisdom - - + +aimisc->aigpwisdom + + -aiforgames2->aiintermediate - - + +aiforgames2->aiintermediate + + -aiforgd->aiintermediate - - + +aiforgd->aiintermediate + + -proggameaibyexample->aiintermediate - - + +proggameaibyexample->aiintermediate + + -unityaigp2->aiintermediate - - + +unityaigp2->aiintermediate + + -aima3->aimisc - - + +aima3->aimisc + + -behavioralmathforgameai->aimisc - - + +behavioralmathforgameai->aimisc + + -aigpwisdom2 - - -AI Game Programming -Wisdom 2 (2003) + +aigpwisdom2 + + +AI Game Programming +Wisdom 2 (2003) -aigpwisdom->aigpwisdom2 - - + +aigpwisdom->aigpwisdom2 + + -aigpwisdom3 - - -AI Game Programming -Wisdom 3 (2006) + +aigpwisdom3 + + +AI Game Programming +Wisdom 3 (2006) -aigpwisdom2->aigpwisdom3 - - + +aigpwisdom2->aigpwisdom3 + + -aigpwisdom4 - - -AI Game Programming -Wisdom 4 (2008) + +aigpwisdom4 + + +AI Game Programming +Wisdom 4 (2008) -aigpwisdom3->aigpwisdom4 - - + +aigpwisdom3->aigpwisdom4 + + -gameaipro - - -Game AI Pro (2013) + +gameaipro + + +Game AI Pro (2013) -aigpwisdom4->gameaipro - - + +aigpwisdom4->gameaipro + + -gameaipro2 - - -Game AI Pro 2 (2015) + +gameaipro2 + + +Game AI Pro 2 (2015) -gameaipro->gameaipro2 - - + +gameaipro->gameaipro2 + + + + + +gameaipro3 + + +Game AI Pro 3 (2017) + + + + + +gameaipro2->gameaipro3 + + - + -multiplayerbegin - -Beginning Multiplayer Game Programming + +multiplayerbegin + +Beginning Multiplayer Game Programming -multiplayergp - - -Multiplayer Game -Programming (2015) + +multiplayergp + + +Multiplayer Game +Programming (2015) -multiplayerbegin->multiplayergp - - + +multiplayerbegin->multiplayergp + + -multiplayermisc - -Multiplayer Game Articles + +multiplayermisc + +Multiplayer Game Articles -massivelymultiplayergd - - -Massively Multiplayer -Game Development -(2003) + +massivelymultiplayergd + + +Massively Multiplayer +Game Development +(2003) -multiplayermisc->massivelymultiplayergd - - + +multiplayermisc->massivelymultiplayergd + + -serverprog - -Server Programming + +serverprog + +Server Programming -progposixthreads - - -Programming with -POSIX Threads (1997) + +progposixthreads + + +Programming with +POSIX Threads (1997) -serverprog->progposixthreads - - + +serverprog->progposixthreads + + -networkprotocol - -Network Protocol + +networkprotocol + +Network Protocol -tcpipillustratedv1_2 - - -TCP/IP Illustrated -Vol 1 2nd Ed (2011) + +tcpipillustratedv1_2 + + +TCP/IP Illustrated +Vol 1 2nd Ed (2011) -networkprotocol->tcpipillustratedv1_2 - - + +networkprotocol->tcpipillustratedv1_2 + + -networkprog - -Network Programming + +networkprog + +Network Programming -unixnetworkprogv1_3 - - -Unix Network -Programming -Vol 1 3rd Ed (2003) + +unixnetworkprogv1_3 + + +Unix Network +Programming +Vol 1 3rd Ed (2003) -networkprog->unixnetworkprogv1_3 - - + +networkprog->unixnetworkprogv1_3 + + -multiplayergp->multiplayermisc - - + +multiplayergp->multiplayermisc + + -multiplayergp->serverprog - - + +multiplayergp->serverprog + + -multiplayergp->networkprotocol - - + +multiplayergp->networkprotocol + + -multiplayergp->networkprog - - + +multiplayergp->networkprog + + -massivelymultiplayergd2 - - -Massively Multiplayer -Game Development 2 -(2005) + +massivelymultiplayergd2 + + +Massively Multiplayer +Game Development 2 +(2005) -massivelymultiplayergd->massivelymultiplayergd2 - - + +massivelymultiplayergd->massivelymultiplayergd2 + + -advancedprogunixenv3 - - -Advanced Programming -in the UNIX Environment -3rd Ed (2013) + +advancedprogunixenv3 + + +Advanced Programming +in the UNIX Environment +3rd Ed (2013) -progposixthreads->advancedprogunixenv3 - - + +progposixthreads->advancedprogunixenv3 + + -linuxsystemprog2 - - -Linux System -Programming -2nd Ed (2013) + +linuxsystemprog2 + + +Linux System +Programming +2nd Ed (2013) -advancedprogunixenv3->linuxsystemprog2 - - + +advancedprogunixenv3->linuxsystemprog2 + + -tcpipillustratedv2 - - -TCP/IP Illustrated -Vol 2 (1995) + +tcpipillustratedv2 + + +TCP/IP Illustrated +Vol 2 (1995) -tcpipillustratedv1_2->tcpipillustratedv2 - - + +tcpipillustratedv1_2->tcpipillustratedv2 + + -tcpipillustratedv3 - - -TCP/IP Illustrated -Vol 3 (1996) + +tcpipillustratedv3 + + +TCP/IP Illustrated +Vol 3 (1996) -tcpipillustratedv2->tcpipillustratedv3 - - + +tcpipillustratedv2->tcpipillustratedv3 + + -unixnetworkprogv2_2 - - -Unix Network -Programming -Vol 2 2nd Ed (1998) + +unixnetworkprogv2_2 + + +Unix Network +Programming +Vol 2 2nd Ed (1998) -unixnetworkprogv1_3->unixnetworkprogv2_2 - - + +unixnetworkprogv1_3->unixnetworkprogv2_2 + + -linuxnetworkinternals - - -Understanding Linux -Network Internals -(2006) + +linuxnetworkinternals + + +Understanding Linux +Network Internals +(2006) -unixnetworkprogv2_2->linuxnetworkinternals - - + +unixnetworkprogv2_2->linuxnetworkinternals + + -ccsa - - -This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. + +ccsa + + +This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. diff --git a/images/fluidenginedev.jpg b/images/fluidenginedev.jpg new file mode 100644 index 0000000..fb67b1f Binary files /dev/null and b/images/fluidenginedev.jpg differ diff --git a/images/fpbma.jpg b/images/fpbma.jpg new file mode 100644 index 0000000..7567b7c Binary files /dev/null and b/images/fpbma.jpg differ diff --git a/images/gameaipro3.jpg b/images/gameaipro3.jpg new file mode 100644 index 0000000..e91c9ff Binary files /dev/null and b/images/gameaipro3.jpg differ diff --git a/images/gpuzen.jpg b/images/gpuzen.jpg new file mode 100644 index 0000000..6f3fa42 Binary files /dev/null and b/images/gpuzen.jpg differ