tl; dr: Das Erlernen des Erstellens einer Engine ist für das Erstellen von Spielen oft genauso nützlich wie das Erlernen des eigenen Computers und Betriebssystems von Grund auf neu. Wenn Sie kein Experte auf diesem Gebiet sind, möchten Sie wahrscheinlich keinen Motor bauen. Machen Sie stattdessen ein Spiel, der Engine-Teil ist bereits vorhanden. Wenn später keine der Engines, auf die Sie Zugriff haben, die Kriterien für Ihr Spieldesign erfüllt, können Sie sich darauf konzentrieren, diesen bestimmten Aspekt zu entwickeln, und es könnte auch für andere nützlich sein, da Sie etwas Neues erstellen und keine weniger robuste Version erneut aufbereiten von etwas, in das die Leute bereits Tausende von Stunden investiert haben.
Lange Version: Wenn Sie wirklich lernen möchten, wie man eine Engine schreibt, schauen Sie sich noch keine vorhandene Engine an. Lernen Sie anstelle der Teile (Algorithmen), aus denen eine Engine besteht, sei es Rendering, Physik oder Pfadfindung usw. Sobald Sie ein tiefes Verständnis für einen bestimmten Aspekt erlangt haben, möchten Sie möglicherweise die Quelle überprüfen.
Normalerweise möchten Sie nicht direkt von der Quelle lernen, es sei denn, es gibt keine überlegene Alternative. Selbst erfahrene Programmierer würden normalerweise nicht auf die Quelle einer gesamten Engine schauen, um daraus zu lernen (wenn sie helfen können), sie würden höchstwahrscheinlich einen bestimmten Teil davon inspizieren oder einen bestimmten Teil davon optimieren. Der Versuch, die Quelle für reine Lernzwecke zu betrachten, würde das Verfahren und den Denkprozess hinter dem Engine-Code nicht offenlegen. Das wäre, als würde man ein Gebäude in Stücke zerreißen, um sein Inneres zu sehen und zu lernen, wie man eines baut. Obwohl ich mit Joshs Antwort einverstanden bin, werde ich noch einen Schritt weiter gehen. Sie lernen nicht einmal das "Wie" in vielerlei Hinsicht (es sei denn, Sie sind mit dem Gebiet vertraut). zum Beispiel, Welche Methodik wurde vom Programmierteam verwendet? Auf welche Grundsätze stützten sie sich bei der Implementierung des Arbeitscodes? Welche Tools und Techniken haben sie zum Debuggen verwendet? All diese Fragen sind manchmal wichtiger als der Code selbst (zu Lernzwecken).
Wenn Sie aus der Quelle lernen möchten, suchen Sie nach einer Quelle, die gut dokumentiert ist und eine starke Community aufweist. Das Lesen von (Motor-) Code, selbst wenn Sie ihn selbst geschrieben haben, ist oft verwirrend.