Archiv für November 2009

Projektstatistik 11/2009

Montag, 30. November 2009

So, auch diesen Monat gibt es wieder eine Projektstatistik, schließlich tut sich im Moment ja wieder einiges, obwohl ich nicht die allermeiste Zeit habe. Aber da ich ja nun angefangen bin Spiel-spezifischere Komponenten zu entwickeln, bin ich im Moment sehr motiviert, so dass ich auch zwischendurch mal einfach ein paar Zeilen code. So sind im Laufe des Novembers ca. 6.000 Zeilen hinzugekommen (knapp 2.000 Zeilen reiner Code). Aber seht selbst. Hier ist die aktuelle Tabelle:

Zeilen gesamt Nur Code Nur Kommentare Code mit Kommentaren Leerzeilen Nicht-Leerzeilen
132.662 56.419 41.473 3.866 30.904 101.758
100 % 43 % 31 % 3 % 23 % 77 %

(Zur vorigen Tabelle geht es hier.)

Dann habe ich da noch eine erfreuliche Nachricht für euch: Ich wurde schon das eine oder andere Mal gefragt, ob man mal einen Blick auf den Sourcecode werfen dürfe oder auch, ob es sich um ein Open-Source-Projekt handelt. Tja, dazu kann ich bisher ehrlich gesagt selber noch nicht allzu viel sagen, weil ich noch gar nicht weiß, wohin das Projekt noch führt und wie es sich weiterentwickelt. Ausführbaren Code veröffentliche ich also noch nicht, aber ich habe nun eine Dokumentation generieren lassen unter Zuhilfenahme des wirklich tollen Tools Doxygen, wodurch ein sehr guter Überblick über die gesamte Engine und die bisher fertigen bzw. angefangenen Teile des eigentlichen Spiels gegeben wird und die eine Art Dokumentation der API der Engine darstellt. Folgt hierfür einfach diesem Link: Der Code. Viele werden damit wahrscheinlich nix anfangen können, weil es viel zu technisch ist. Aber ich denke, es ist dennoch eine ganz interessante Sache.

Bis die Tage, Freunde.

Geburtstag

Freitag, 27. November 2009

Heute ist ein ganz besonderer Tag, denn Elsa und Cyber haben wieder beide Geburtstag. Cyber spricht ja nicht gerne über sein Alter, aber Elsa wird heute 30. Ein kluger Kopf mit entsprechenden Hintergrundinformationen kann somit auch auf Cybers Alter schließen.

Sehr viel über die beiden zu berichten gibt es darüberhinaus leider nicht, außer natürlich, dass beide enorm auf viele teure Geburtstagsgeschenke abfahren, das ist ganz klar. Aber das wissen ja eh alle.

Mein Geschenk an Elsa und Cyber ist ein Materialeigenschafteneditor. Dieser ist dazu da, um Texturen verschiedener Art mit Farben und Shadern zu kombinieren und diese Kombinationen als “Materialen” zu speichern. Die über den Materialeigenschafteneditor gepflegten Materialien können dann verwendet werden, um sie einzelnen Objekten in der Spielwelt zuzuweisen. Die Texturen der Materialien nehmen dabei verschiedene Rollen ein, z.B. gibt es eine Textur, die die eigentlichen Pixelinformationen des jeweils darzustellenden Objekts enthält. Weitere, optionale Texturen enthalten Informationen über die Oberflächenbeschaffenheit (z.B. in welcher Richtung das Licht reflektiert wird). Die Texturen werden dann mit spezifizierten Farben gemischt, um generische Texturen individuell wiederverwenden zu können. Über die Auswahl einer konkreten Shader-Combo wird angegeben, in welcher Art und Weise die Textur- und Farbinformationen dann letztlich zur Darstellung kombiniert werden.

Es ist mir etwas peinlich, denn der Materialeigenschafteneditor ist noch gar nicht ganz fertig. Aber das merken Elsa und Cyber heute sowieso nicht, hahaha. Also hab ich noch ein wenig Zeit. Aber hier ist ein erster Screenshot:

World-Editor: Erster Screenshot

Freitag, 06. November 2009

Heute gibt es den ersten Screenshot vom World-Editor zu sehen. Besonders umfangreich ist das Werkzeugarsenal des World-Editors bisher noch nicht. Aber das wird es erstens bald sein und zweitens kann man bereits “Blöcke” platzieren, auf denen Cyber dann später rumlaufen und -springen wird, sowie von der Undo/Redo-Funktionalität Gebrauch machen:

Im Screenshot mag der Inhalt des World-Editors noch recht langweilig aussehen. Das liegt daran, dass die “Welt” im World-Editor auf Basis ganz simpler Techniken visualisiert wird und das bislang noch ohne individuelle Texturen der Blöcke. Erstens, weil es wenig sinnvoll ist, den World-Editor mit raffinierten Rendering-Techniken auszustatten, weil, zweitens, durch die schlichte Darstellung der Überblick erhalten bleibt und so der Anwender nicht durch ein völlig überladenes Grafikgeballer in den Wahnsinn getrieben wird. Schließlich müssen die “Welten” ja wie auf einem Reißbrett regelrecht konstruiert werden. Hübsch aussehen müssen sie erst später, wenn Cyber sich in ihnen rumtreiben wird. Dann werden sie mit anderen Techniken und ausgefeilten Raffinessen dargestellt. Das sieht dann richtig geil aus — hoffentlich! Yeah, Baby!