Wenn Sie nach einer Rendering-Engine suchen, die die gesamte erste Liste sofort ausführt, werden Sie wahrscheinlich nicht viel finden. Dinge wie ausgefallene Licht-Shader und Tag / Nacht-Dinge sind sehr spiel- / simulationsspezifisch, und in den meisten Rendering-Engines ist so etwas entweder nicht eingebaut, oder die eingebaute Implementierung entspricht nicht Ihren spezifischen Anforderungen.
Ich benutze Ogre3D , das ich von ganzem Herzen empfehlen kann:
Open Source
Ogre ist Open Source unter der MIT-Lizenz.
Tag / Nacht-Zyklen
Nichts eingebaut, obwohl es einige Erweiterungen gibt, die so etwas tun ( Caelum fällt mir ein).
dynamisches Wetter Wind / Regen / Wolken / etc.
Auch hier ist nichts sofort einsatzbereit , aber es gibt eine Reihe von Erweiterungen, die so etwas tun (wieder Caelum und auch SkyX ).
nasse Oberflächen (Oberflächen sehen bei Regen nass aus)
Sie müssen einen Shader dafür schreiben, aber es ist möglich (ich habe einen solchen Effekt in der Vergangenheit mit Ogre erzielt).
realistisches Wasser
Dafür gibt es ein oder zwei Plugins ( Hydrax ist ziemlich hübsch), und das SDK-Beispiel "Fresnel" zeigt einen einfachen Refraktions- / Reflexions-Wasser-Shader (und es gibt ein oder zwei weitere Beispiele, die sich mit Wassereffekten befassen).
großes Gelände mit der Fähigkeit, "Straßen" zu definieren
Keine Straßen, aber Ogre hat kürzlich ein neues Geländesystem bekommen, das sehr schön ist.
nahtloses Äußeres und Inneres
Ogre hat ein paar verschiedene Plugins für Portal-verbundene Zonen, BSPs usw., sodass es alles unterstützen sollte, was Sie brauchen.
Wälder (viele Bäume, Unordnung usw.) **
Ogre verfügt über einige integrierte Batching-Funktionen und die Paged Geometry Addon " ist angeblich recht nett.
realistische Beleuchtung (dh Licht von einem Feuer / Kerze flackert) **
Abgesehen von einigen Beispiel-Shadern, die in den Beispielen enthalten sind, gibt es keine eingebauten Licht-Shader, aber das Material / Shader-System macht es sehr einfach, einen Licht-Shader zum Laufen zu bringen.
Insgesamt ist Ogre zu all dem fähig und verfügt über ein sehr robustes Material- / Shader-System, aber Sie müssen die Shader für viele Effekte selbst schreiben (und dies gilt für die meisten anderen Rendering-Engines, die Sie nicht können wirklich eine Einheitslösung für viele dieser Effekte machen).
DevMaster führt eine umfassende Liste von Engines und Funktionen:
http://www.devmaster.net/engines/
Die meisten Engines bieten keine Tag / Nacht-Zyklen an, da es immer eine Zeit im Zyklus gibt, in der die Karte schlecht beleuchtet ist und schlecht aussieht (genau wie im echten Leben) - normalerweise eine unnötige Funktion für Spiele.
quelle
Dies mag etwas vom Thema abweichen, aber ich würde empfehlen, sehr sorgfältig darüber nachzudenken, ob Sie wirklich Tag / Nacht-Zyklen für Ihr Projekt benötigen.
Wenn Sie diese Funktion unterstützen, sagen Sie im Wesentlichen, dass keine eingebauten Lichter / Schatten zulässig sind. Dies macht es viel schwieriger, schöne Ergebnisse zu erzielen, unabhängig davon , für welchen Motor Sie sich entscheiden.
Viele Leute waren kürzlich von der Epic Citadel iPhone / iPad-Demo begeistert. Technisch gesehen macht es nichts Unglaubliches - es ist eine Kombination aus guter Kunst und gut eingebrannter Beleuchtung.
quelle