Irrlicht - genau so unbrauchbar wie OGRE?
Eines gleich vorweg: Irrlicht ist wesentlich angenehmer und insgesamt einfacher beherrschbar als OGRE. Was ich in der OGRE-Umgebung in 2 Monaten nicht geschafft hatte, nämlich definitiv zu erfahren, ob die Library überhaupt geeignet ist, war in Irrlicht nach 1 Woche geklärt: Nein, auch Irrlicht ist für das Bunny-Hill-Projekt nicht geeignet.
Im Gegensatz zu OGRE, wo ich immer nur auf der Stelle herumirrte und "vor lauter Bäumen den Wald nicht mehr sah", konnte ich in Irrlicht zielstrebig das Terrain-System erkunden. Eine verbleibende Frage war im Forum schnell beantwortet, und übrig blieb die Einsicht, dass das Terrain-Renderung komplett neu geschrieben werden müsste, um die Anforderungen meines Vorhabens zu erfüllen. Und genau da liegt der springende Punkt: Wenn man schon so eine umfangreiche und anspruchsvolle Funktionalität selber codieren muss, dann ist eine Library wie Irrlicht (erst recht OGRE) keine Hilfe mehr, sondern engt nur ein und bedeutet eine zusätzliche Belastung. Es ist so, als müsste man eine Wohnung von Grund auf neu sanieren, ohne das Mobiliar verrücken zu können.
Diese Probleme führen direkt zur entscheidenden Frage, wann nämlich eine derartige Engine wirklich Vorteile bringt. Der Autor einer Engine hat ja gewisse Vorstellungen, die sich zwar im Laufe der Entwicklung erweitern, aber immer nur bestimmte Dinge im Fokus haben - und halten. Anders geht es auch gar nicht, erst recht nicht, wenn man ein geschlossenes System anbieten will, womöglich noch mittels OOP gekapselt. Für wirkliche Offenheit müsste die Engine aus elementaren, voneinander weitgehend unabhängigen Funktionen bestehen, die zu programmieren allerdings schnell zu einer Zumutung geraten kann.
Solange also ein Vorhaben einigermaßen zum Schwerpunkt einer Engine passt, kann diese eine enorme Hilfe und Arbeitserleicherung bedeuten. Der Schwerpunkt der aktuellen Spiele- bzw. 3D-Grafik-Engines wird vornehmlich durch die derzeitigen Vorstellungen von Spielen bestimmt, wo die Aktionen vorzugsweise in Innenräumen oder begrenzten Außenbereichen abspielen. Tuxracer mit den ausgedehnten Landschaften und der rasanten Bewegung passt irgendwie nicht dazu. Hinzu kommen noch Spezialitäten wie die Trackmarks, also die Gleitspuren, oder der enge Zusammenhang zwischen Steuerung und Terrainbeschaffenheit. Oder der Schneefall als Partikelsystem mit besonderen Anforderungen. Die Zahl der Partikel (Schneeflocken) geht in die Millionen und kann nur mit besonderen Optimierungen realisiert werden. Diese Maßnahmen passen wiederum schlecht zu vorgefertigten Schemata.
Eine sehr kleine Chance gibt es noch, und zwar in Form des Irrlicht-Derivats "Lightfeather". Diese Engine ist zwar aus Irrlicht hervorgegangen, hat sich aber selbständig gemacht und m.E. andere Schwerpunkte gesetzt. Es scheint so, als sei Lightfeather in Beziehung auf das Terrain-Rendering wesentlich leistungsfähiger, aber leider konnte ich das bisher noch nicht genauer erkunden, weil es mir nicht gelang, das Teil zu kompilieren. Eine Anfrage im Forum blieb erfolglos; es gab noch keine Antwort. Überhaupt macht das Forum den Eindruck, als sei es eingeschlafen und außerdem noch Bot-verseucht. Auch dieser Irrlicht-Ableger wird sich wohl als Irrweg erweisen.