Al bij al komt het gewoon terug neer op kunnen software engineering, zorgen dat je het overzicht bij alles behoudt. Iedereen kan een simpel game proggen, maar bij de ene zal de code onduidelijk zijn en een ramp om te debuggen/aan te passen en dan nog eens tergend traag met slechte algoritmes, terwijl de andere vrij vlot kan overschakelen naar iets nieuws en het meeste vlotjes verloopt.
Voor game-engines zelf is het eigenlijk vooral enkel de core-engine (grafische engine, geluidsengine, ...) die het moeilijke proggen omvat, omdat daar het meeste snelheids-verbruik inzit en dus meest optimalisatie vereist. Als je dat eenmaal deftig hebt afgewerkt is het toevoegen van nieuwe game-play elementen simpeler & veel meer traditioneel programmeren (kzeg niet dat het makkelijk wordt he

).
Maar het feit blijft dat je vrij veel kennis gewoon moet hebben.
Je moet goed c++ (of de taal waarin je progt) kennen, je moet kennis hebben van de api's waarin je multimedia engines zijn geschreven, wat zelfs in je gameplay ga je vaak nog speciale effecten moeten toevoegen (bv. speciale particle emitters). En dan natuurlijk moet je nog liefst uitgebreide kennis hebben van meetkunde en liefst ook wat discrete wiskunde (logica, grafenleer, combinatieleer, ...). Want dat heb je zelfs buiten je basis-engine nog genoeg nodig om dingen te berekenen

.
Spijtig genoeg echter is een groot deel van deze zaken niet aanleerbaar in een boek

. Het enige waar boeken goed voor zijn is je nieuwe zaken leren, nieuwe methoden, nieuwe wiskundige begrippen, ... . Of je er genoeg inzicht voor hebt hangt compleet van jezelf af!.
bv. je kan path-finding algoritmes schrijven adhv grafenleer, maar als je rechtstreeks die basisalgoritmes gaat kopiëren heb je mssch wel een zeer goed, maar ook zeer traag algoritme. Wil je een doenbaar algoritme, dan zal je zelf het inzicht moeten hebben hoe dit op te stellen en te distilleren uit al die kennis die je hebt

.
Dus, boeken zijn zeer nuttig om zaken te leren, maar deze helpen je echt geen game maken, als jij alle code rechtstreeks overtypt van een boek, leer je het niet. ALs je begrijpt wat er in het boek staat en met behulp van hun uitleg eigenlijk een totaal ander game maakt, dan zal je er mssch iets mee zijn

.
Daarom lees ik bv. programmatie boeken gewoon 's avonds in bed of zo, sommige vinden dat vrij raar, maar zo leer ik het best, ik lees hoe je die nieuwe dingen doet, hoe alles werkt, ... en de volgende dag (of wat later

) pruts ik zelf zoveel ik kan totdat ik weet hoe het werkt en vooral, wat je er mee kan aanvangen. Tijdens dat prutsen komt dat boek bijna niet meer boven, tenzij om de juiste syntax van sommige zaken eens na te kijken. Mensen die uit een programmatieboek leren met dat boek naast hun terwijl ze alles overtypen op pc zijn meestal niet goed bezig.
(kan zijn dak wa tegenstrijdigheden of oncorrecte (imho) dingen heb getypt, nadeel van in 3x uw tekst te typen)