Technologie
ultitech möchste so viele Computer wie möglich unterstützen, indem wir auf cross-platform Software setzen. Jedes Programm ist perfekt für Linux, Mac und Windows angepasst. Für bestmögliche Performance nutzen wir OpenGL und SDL.
ultitech möchste so viele Computer wie möglich unterstützen, indem wir auf cross-platform Software setzen. Jedes Programm ist perfekt für Linux, Mac und Windows angepasst. Für bestmögliche Performance nutzen wir OpenGL und SDL.

Die Open Graphics Library wurde 1992 von Silicon Graphics Inc. (SGI) entwickelt und wird heute von der Khronos Gruppe weiterentwickelt. OpenGL definiert Funktionen zum Ansteuern von hardwarebeschleunigten Grafikkarten.
OpenGL ist eine der populärsten 3D-Grafik-Apis neben Direct3D, welche von Microsoft Corp. entwickelt wird. Beide APIs haben dieselbe Funktion: Definition und Implementierung von Methoden, welche es Programmieren erlauben, Hardwarebeschleunigung auf modernen Grafikkarten zu benutzen. Spiele und Simulationen laufen deshalb flüssiger, weil die GPU für die Berechnung von 3-Dimensionaler Grafik hoch optimiert ist. Diese APIs mögen eine identische Funktion haben, jedoch ist ihre Benutzung deutlich unterschiedlich. OpenGL konzentriert sich auf die Cross-Plattform-Kompatibilität und benutzt daher Standard-Typen der C-Sprache, während Direct3D das Programmieren erleichtern möchte, indem sie viele Methoden und Scripting-Konventionen von Microsoft benutzt. Und weil Microsoft nie Direct3D für andere Betriebssysteme außer ihren eigenen veröffentlichen wird, ist Direct3D nur eine Lösung für Windows.
Also muss jeder Programmierer selbst entscheiden, welche API er für seine Programme nutzen will. Da sich jeder für "seine" API Entscheided, gibt es viele Diskussionen darüber, welche API nun besser sei.Das wichtigste zuerst: Wir glauben nicht, dass eine API entscheidend besser ist als die andere! Jede API hat ihre Stärken und Schwächen, sodass es dem Programmier überlassen bleibt, sich zu entscheiden. Wir haben uns aufgrund der platformübergreifenden Kompatibilität für OpenGL entschieden. Dadurch sind wir in der Lage, unsere Programme auf jedes größere Betriebssystem zu portieren. In Kombination mit SDL müssen wir daher für einen Port keine einzige Zeile Code ändern. Eine weitere Stärke ist, dass OpenGL nur mit dem Standart C-Typen auskommt. Die Direct3D-Header sind voll von Typdefinitionen und Klassen, die für jede kleine Funktion neue Typen definieren, und wir denken, dass das nicht sauberen Coding-Standarts entspricht. OpenGL benutzt #define und alles kann mit nur bitweise-oder definiert werden. Allerdings ist die Handhabung von Objekten (Shaders, Framebuffer ...) nicht die einfachste, aber dank einfacher Funktionen ist dies möglich ohne eine einzige Klassen-Definition. Der Vorteil ist, dass OpenGL auf mit C-Compilern kompatibel ist, was meiner Meinung nach immer noch besser als C++.

The Simple DirectMedia Layer wurde von Sam Lantinga entwickelt und ist ein Kampatibilitäts-Layer für die Fensterverwaltungssysteme verschiedener Betriebssysteme. SDL nutzt uns hauptsächlich für das Erstellen von OpenGL Kontexten auf verschiedenen Betriebssystemen.
SDL wird zum erstellen von Fenstern mit OpenGL Kontexten auf den verschiedensden Betriebsystemen, unter anderem Linux, MacOS X und Windows. Somit können Softwareentwickler OpenGL Software für alle Betriebssysteme portieren, ohne eine einzige Zeile Code zu ändern. Des weiteren bietet SDL Zugriff auf Peripherie (Tastatur, Maus, usw.), kann Bilddateien laden und den Hight-Resolution Timer auslesen.
Zusammenfassend lässt sich sagen, dass SDL alle Funktionen für plattformübergreifende Spieleentwicklung in einer sehr einfachen und sauberen Weise bietet. Entwickler können ihre Software für jede von SDL unterstützten Plattform veröffentlichen, ohne eine einzige Zeile Code zu ändern. Wir benutzen auch weitere Bibliotheken, wie glew, freeimage und glut, um die Softwareentwicklung noch einfacher zu gestalten.