Ich finde es gut, dass du dir die Mühe für das Wiki gemacht hast.
Da ich mich nicht mit Allegro auskenne, kann ich fachlich nur sehr eingeschränkt Anmerkungen machen.
Aufgefallen ist mir folgendes:
Unter "Was ist Allegro" hast du viele kurze Sätze. An und für sich nicht weiter problematisch, nur beginnen diese immer mit "Allegro" oder stellvertretend mit "Es". Einerseits könnte man die Sätze ein wenig mehr zusammenfassen, also die Informationen über weniger Sätze verstreuen, andererseits wäre es gut, die Sätze zumindest ein wenig umzuformulieren, damit der Text nicht so eintönig wirkt. Aber vielleicht liegt es auch nur an meinem Schreibstil, dass ich es so machen würde... =/
"Wo bekomme ich Allegro" sollte vielleicht etwas weiter runter nach "Installation von Allegro", da es dort teilweise erneut steht.
"Wenn der Quellcode für euer Betriebsystem/Compiler nicht erhältlich ist, [...]" -> du meinst wohl eher die Binarys, oder?
"[...] die allegro-5.0.4-monolith-md.lib einbinden bzw. die allegro-5.0.4-monolith-md-debug.lib wenn wir im Debug-Modus arbeiten." -> "[...] die allegro-5.0.4-monolith-md.lib und wenn wir im Debug-Modus arbeiten die allegro-5.0.4-monolith-md-debug.lib einbinden."
"Die Namen wurden so gewählt, dass sie selbsterklärend sind." -> kann entfallen (wenn überhaupt, dann eher "Für dieses Beispiel wurden selbsterklärende Namen gewählt.")
"[...] Zu der Deklaration des key-Array bzw. des KEYS-enum sei gesagt, dass Allegro nicht speichert
, ob eine Taste gedrückt ist [...]"
"Zu der Deklaration des key-Array bzw. des KEYS-enum sei gesagt, dass Allegro nicht speichert ob eine Taste gedrückt ist, sondern nur ob die gedrückt oder losgelassen wird. Darum speicher wir einfach den Status der Pfeiltasten in einem bool-Array." -> "Da Allegro nicht den Zustand der Tasten speichert, sondern nur über Änderungen der Zustände informiert, müssen wir den Status selbst speichern. In diesem Fall werden nur die Pfeiltasten benötigt, weshalb ein bool-Array ausreichend ist."
"[...] und überprüfen ob sie korrekt ausgeführt werden konnte." -> "[...] und überprüfen
, ob sie korrekt ausgeführt werden konnte."
"[...] die Variable 'running' auf 'false' damit die Game-Loop [...]" -> "[...] die Variable 'running' auf 'false'
, damit die Game-Loop [...]"
Es wäre besser, wenn für Fehler eine eigene Variable verwendet werden würde.
"Selbstverständlich können wir nicht einfach ein Bild direkt in das Fenster zeichnen. Dazu müssen wir einige Dinge vorbereiten. Zuerst muss [...]" -> "Um ein Bild darstellen zu können, muss zuerst [...]"
"[...] das entsprechende Addon, das wir benötigen um überhaupt mit Bilder arbeiten zu können, initialisiert werden." -> "[...] das für die Bearbeitung von Bildern benötigte Addon initialisiert werden."
"[...] bevor wir unsere Audiodatei, in diesem Fall Test.wav
, verwenden können."
"Wenn wir zusätzlich eine andere
Schriftgrüße verwenden möchten, [...]" ...
"Damit wir die Tastatur verwenden
, können machen [...]"
"Dauer eines einzelnen Frames. Wenn wir z.B. 60 FPS haben wollen, geben wir als Parameter 1.0 / 60 an. Danach überprüfen wir, ob der Timer erstellt werden konnte." hat unter "Event-Quellen" nichts zu suchen.
"Die Game-Loop ist eine Schleife, die solange
wird, ausgeführt bis [...]"
"Danach überprüfen wir, ob der Benutzter evtl. das Fenster geschlossen hat
. ist dies der Fall setzen wir die Variable running auf false
."
"Als nächstes machen wir uns an das Abfragen der Tastatur.
Dies ist recht einfach, wenn die entsprechende Taste gedrückt wird
, setzen wir [...]"
"Am Ende zeichnen wir die Szene, falls redraw auf true gesetzt ist
, neu."
Ich kenne mich mit Allegro nicht aus, aber da man auf Events wartet und bei einem beliebigen Event die Variable auf "true" gesetzt wird, wird die Variable redraw eigentlich nicht benötigt. Wäre es zudem nicht besser, wenn man einen festen Zeitwert wartet und nicht, bis ein Event riengeflattert kommt oder wartet Allegro aufgrund der angegebenen Framezeit max. 1/60 Millisekunden auf Events?
"[...], wollen wir vorher noch den verwendeten Speicher freigeben
, um [...]"
Es wäre ganz hübsch, wenn man am Ende den gesamten Quellcode nochmal zusammengefasst sehen würde.
Auch ganz gut wäre es, wenn am Ende noch ein Hinweis darauf stehen würde, womit sich ein Leser als nächstes auseinandersetzen könnte. Das könnten einerseits Übungsaufgaben sein, mit denen sich der Leser dann selbstständig beschäftigen könnte, um das gelernte zu vertiefen, es könnten aber auch Links zu anderen Tutorials sein.
PS: Ich hätte es eher in "Zur Website" eingeordnet...