Vertex

Szene Interviews

Das Interview mit Vertex aus der ersten Ausgabe des ProjectBlitzMag:

Justus: „Vorab: Eine kurze Selbstbeschreibung, bitte ^^“

Vertex: Ich heiße Oliver Skawronek, bin 18 Jahre alt, lebe in Altenburg(Thüringen, in der Nähe von Leipzig) und mache z. Z. meine Ausbildung zum techn. Assistenten für Informatik. Berufsmäßig habe ich so in Richtung Spieleprogrammierung oder Prozessorentwicklung gedacht. Freizeitmäßig: Freundin, Freunde, Partys und Saufen.

Justus: „Vorab2: Eine kurze Beschreibung für Leute wie mich, die bei B+ stecken geblieben sind und keine Ahnung von BMax haben: Was macht DreiDe und was macht DreiDe so geil?“

Vertex: DreiDe ist eine 3D Engine speziell für Spielegrafik. Sie ist so geil, weil sie auf Windows, Linux und MacOS läuft, Killfeatures wie Cubemapping, Bumpmapping, Vertex/Pixelshader usw. besitzt, Open Source, und recht leicht zu erlernen ist.

Justus: „Wie kamst du auf die Idee DreiDe zu programmieren?“

Vertex: Das erste fertige Netzwerkmodul für BlitzMax war meine Schöpfung, also wollte ich auch einer der ersten sein, der eine vernünftige 3D Engine auf die Beine stellt.

Justus: „Wie motivierst du dich selbst dazu, immer weiter zu machen?“

Vertex: Es ist hammergeil, wenn ein selbstgemachter Grafikeffekt vor der Linse flimmert. Mein Wissensdrang hinter die Kulissen zu blicken und das ganze zu verstehen ist unerschöpflich, darum bietet es sich an, das ganze in eigenen Projekten selbst umzusetzen. Wenn ich mir Grafikfeatures von Spielen ansehe, will ich diese auch selber umsetzen. Es ist ein Gefühl der Überlegenheit etwas machen zu können, wofür Leute hoch bezahlt werden(dennoch will ich auch bald zu diesen Leuten gehören ). Ansonsten liegt es nahe, für sein Berufswunsch so viel Erfahrungen zu sammeln, wie möglich.

Justus: „Was möchtest du mit DreiDe erreichen?“

Vertex: Wenn ich mich dann nächstes Jahr für ein Praktikum in einer IT-Firma bewerben muss, brauche ich was zum Vorzeigen. Ansonsten will ich natürlich viele viele Spiele von DreiDe-Usern sehen.

Justus: „Wie lange programmierst du schon an DreiDe?“

Vertex: Zu Beginn von Version 1.00 (DreiDe hieß damals noch "Sitio", span. für "Raum") hatte ich mir dann auch die ersten OpenGL Kentnisse aneignen können, die über das üblich Anzeigen eines bunten Dreieckes hinaus gingen. Das war so Mitte März 2005. Dann war es ersteinmal still um DreiDe. Mich hat dann im Juli doch die Lust wieder gepackt und ich habe alles von Vorne begonnen.

Justus: „Du hast ja bereits einige andere Programme und BB-Erweiterungen höherer Programmierkunst geschrieben - eine kleine Zusammenfassung deiner bisherigen Errungenschaften bitte!“

Vertex: Ich glaube mit meiner BASS-Userlib hat alles so begonnen. Auch wenn manch Schandmaul anderer Meinung ist, ich habe Rythmus im Blut, und mit BASS konnte ich endlich auch mal Objekte nach Musik auf dem Bildschirm tanzen lassen.

Da ich in Übung war, Userlibs zu entwickeln, habe ich dann auch gleich DevIL übersetzt. Ist eine kleine Imagebibliothek die viele Bildformate laden und speichern kann.

Als nächstes kam eine Software-Rendering-Engine. Sie macht praktisch das, was eine 3D Grafikkarte leistet. War nur Wireframe, aber sicherlich interessantes Projekt. Wenn man mal an Quake1 zurück denkt... Da ist das Retroherz auf Extasy.

Wer sich etwas näher mit Blitz3D/2D auseinander gesetzt hat, wird wissen, das der Zugriff in Pixelebene ziemlich lahm ist. Also habe ich mit anderen Kollegen begonnen, Blitz auseinander zu nehmen, direkt gesagt zu hacken. Plötzlich war es möglich, das man z. B. eine DLL schreiben konnte, um direkt Bilder seiner Webcam in ein Image zu übertragen. Das ganze wurde dann doch etwas zu weit getrieben, und es wurden Sachen gehackt, die völlig sinnlos waren. Schlussendlich habe ich dann ein BlitzHacker geschrieben, der aus Blitz erstellte Exe-Dateien alle Variablen, Funktionen usw. auslesen konnte.

Eine Zeit lang war ich in einem Team genannt "TriStar" die noch gute alte Retrodemos produziert hatten. Ein Kollege "Pixel" steht auf die alten C64 Sounds, und da gibt es die SID Musikdateien die er in Blitz abspielen lassen wollte. Also habe ich mich dran gesetzt, einen Player für das Zeug zu coden. Mir war bis dahin nicht bewusst, das SID Dateien Programmdateien wie Exe-Dateien sind. Man musste die C64 CPU und den SID Chip der im C64 drin war, emulieren! Also setzte ich mich ran, und entwickelte einen C64 CPU Emulator mit Blitz. Leider stellte sich dann tausende Zeilen Code später heraus, das die komplette Adressierung falsch emuliert wurde. Aber von nun an wusste ich, wie ein Emulator arbeitet, und habe wichtige Assemblerkentnisse erhalten.

Mit diesen Kentnissen wollte ich dann eine ultimative Hochsprache, sprich Compiler ála Blitz für einen kleinen günstigen Handheld genannt PMini entwickeln. Naja zu wenig Zeit gehabt, um was vernünftiges daraus zu machen. Es ist dann doch nur beim gepushten Lexer geblieben.

BlitzMax flog Weihnachten 2005 in mein Haus. Was neben einer 3D Engine fehlte, war ein Netzwerkmodul. Also Kenntnisse zum Thema Sockets gesammelt und mich dran gemacht, alle UDP- und TCP-Befehle von BlitzBasic nach BlitzMax zu portieren. Das gute Ding habe ich dann "BNet" getauft. Auf Windows lief es recht gut, doch eine Portierung auf Linux und MacOS musste her. Hier entstand mein Hass auf Linux und meine Meinung, dass Linux garnicht Open Source ist(nicht ernst nehmen). BigMichi hat mir dann aber später angeboten, das ich auf seinem Linuxrechner programmieren kann über ein Remotecontrol. Das ganze war erfolgreich und konnte mit einer kleinen Änderung dann auch auf MacOS portiert werden. Kurz darauf kam dann Marks Socket Modul heraus, wobei ich meins geiler finde

Und noch einige allgemeine Fragen:

Justus: „Seit wann programmierst du in BB?“

Vertex: Ich glaube, etwas später, als Blitz3D released wurde.

PBM: „Wie bist du zu BB gekommen?“

Vertex: Hier sei SucoX gedankt, der mich aus den Klauen von DarkBASIC befreit hat

PBM: „Was denkst du sind die größten Stärken/Schwächen von BB/BlitzMax?“

Vertex: BlitzBasic ist eine Sprache, die man mal programmiert haben sollte. Generell sollte es in Schule gerlehrt werden(zur Hölle mit TurboPascal!!!). Sie ist einfach, bugfrei, stabil und performant. Hier wurde großes Potential ausgeschöpft. Mit Blitz3D gehts dann richtig los!

BlitzMax: Wer objekt orientiert programmieren will, der ist sicher der Meinung, das er mit C++ oder C# besser beraten sei, zumal das kostenlose Sprachen sind. Die Module von BlitzMax machen diese Sprache aber so interessant. Auch wenn ich kein Freund von Mark's Codestil bin, ist es super, das er die Module Open Source lässt. Die Help kann man getrost wegwerfen, aber die Sourcecodes erklähren alles.

Generell ist BlitzMax für mich die ultimative Sprache, und das kann ich nach über 12 erlernten Sprachen mit Sicherheit sagen.

  • Zuletzt aktualisiert am 1.7.2006 von Justus.