Deshalb meine Frage: Vorausgesetzt man arbeitet das ganze Buch durch und versteht den kompletten Inhalt, wäre man in der Lage die TriBase-Engine in vollem Funktionsumfang selbst zu erstellen oder würden dafür Grundlagen fehlen, die im Buch gar nicht näher beschrieben werden?
Wie lukuku schon geschrieben hat, man wäre nicht in der Lage, die
gesamte Engine nachzuprogrammieren. Eine Klasse, bei der ich wirklich nur auf die Handhabung eingegangen bin, ist die Klasse tbGUI für die Benutzeroberfläche. Du kannst Dir wahrscheinlich vorstellen, wie komplex diese Klasse ist. Sieh es als Zusatzfunktionalität. Die Engine kann eben etwas, was im Buch nicht beschrieben wird.
Und ich denke eigentlich nicht, dass das sonderlich schlimm ist. Denn das trifft ja hauptsächlich bei solchen Themen zu, die eigentlich garnicht Teil des Buches sind. Also eine Art Gratis-Geschenk, wenn Du es so sehen willst
Du solltest wirklich nicht bei 50 Seiten stoppen. Gerade am Anfang gibt es viele Dinge, die nur besprochen, und nicht hergeleitet werden. Das ändert sich aber im Verlauf des zweiten Kapitels.
Lies es Dir am besten komplett durch. Dann sollte man zumindest in der Lage sein, zu verstehen, wie die Engine funktioniert und die wichtigsten Klassen wie tbDirect3D, tbDirectSound, tbSound, tbDirectInput, tbVideo, tbMusic, tbFont, tbModel zu durchschauen.
Es ist auch immer so eine Sache. Fragen wie "Was kann man, wenn man das Buch gelesen hat?" sind garnicht eindeutig zu beantworten. Es kommt natürlich immer auf den Leser an.
In der zweiten Auflage werde ich wahrscheinlich genauer auf die Herleitung der Klassen tbVector2/3, tbColor, tbMatrix, tbPlane, des Memory-Managers und der Logbuchfunktionen eingehen. Ich gebe zu, dass bei diesen Klassen wohl ein bisschen mehr Herleitung nichts geschadet hätte. Ich hoffe, Du verzeihst mir das und liest das Buch trotzdem. Denn dort stehen so viele nützliche Dinge drin, für die Du nachher mit Sicherheit dankbar sein wirst
Das Ziel des Buches ist ja auch nicht, zu zeigen, wie man eine komplette Engine Zeile für Zeile programmiert. Sondern es geht ganz eindeutig - wie der Titel ja auch sagt - um
Spieleprogrammierung. Bitte verstehe, dass bestimmte Bestandteile der Engine wirklich aus Platzgründen garnicht hätten hergeleitet werden können - aber das steht ja auch im Buch drin.
Nehmen wir als Beispiel die tbVector3-Klasse. Dort sind so grundlegende Dinge drin, die man - vorausgesetzt man hat die Vektorrechnung verstanden - sofort nachprogrammieren könnte. Gleiches gilt für tbColor, tbPlane und tbMatrix. Abgedruckt im Buch wären das etliche Seiten voller Operatoren, die letzten Endes immer nur dasselbe tun.