Vorschlag, zu welcher C ++ 3D Engine zwischen Ogre, Irrlicht und OpenSceneGraph besser ist
Ich bin sehr vertraut mit 3d-Grafik (ich entwickelte ein kleines und einfaches 3d-Spiel-engine für ein akademisches Projekt).
Jetzt habe ich aber die Entwicklung einer audio - /video-tool in C++, das erfordert auch einige 3d-Funktionen drin, ich kann also nicht darauf verlassen, dass mein kleines Programm, aber ich brauche eine 3d-engine, framework, mit der eine hohe Performance standards und Funktionen.
Ich würde gerne wissen, Ihre Meinungen über das, was ist die beste Wahl für eine 3d-engine zwischen diesen 3 Produkten, die ich hörte:
- Oger
- Irrlicht
- OpenSceneGraph
Den Anforderungen, die ich brauche, sind die folgenden:
- Cross-Plattform-Unterstützung
- Hohe Leistungen
- Unterstützung für video-codec
- Lizenzen ( möglicherweise haben die Wahl, beide open-und closed source-version von mein Produkt geschrieben, mit dem gewählten Rahmen)
- Qualität und Quantität von grafischen Effekten avaible
Beantwortung bitte beachten, dass ich nicht die Entwicklung eines Videospiel-und meine Auswahl der besten Rahmen wird nicht davon abhängen, wie viel es ist schwierig zu verwenden. Ich bin daran interessiert sind nur in den Funktionen, die das framework bietet.
Ich würde gerne besser verstehen, was sind die Unterschiede und die Vorteile der Verwendung eines Frameworks anstelle eines anderen.
InformationsquelleAutor der Frage Heisenbug | 2011-03-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
First off, beide OpenSceneGraph (OSG), kurz und Ogre3D sind sehr gut dokumentiert, unterstützt, großen forum, usw... ich weiß nicht viel über Irrlicht außer es ist das neueste von Ihnen. Sie werden wahrscheinlich nicht schief gehen mit entweder der ersten beiden. Jemand erwähnte, CrystalSpace; ich habe Sie nicht sah, dass in Jahren, aber es war weit hinter diesen Jungs in features und API.
Domain -
Wenn ich entscheiden, ich würde wissen wollen, welche domain ich war konzentriert. z.B. Ganze Erde simulation. Oder ein Gefühl von dem, was wiedergegeben wird. Wie: Gelände/Erde, gesehen von Luft - | Innen in einem Gebäude, sondern mit fremden | Etwas wie CAD | Visualisierung von Informationen
Ich sage das, weil OpenSceneGraph hat einen starken Einfluss in der simulation und Militär-Einstellung. Disclosure: das ist mein Bereich und ich verwende die OSG auf einer täglichen basis. Das heißt, ich wollte schon immer zu versuchen, Ogre3D und es folgten Jahre an der Seitenlinie; ich nur noch nicht dazu gekommen. Als solcher, ich kann nicht tun, eine vollständige vergleichen und Kontrast. Ich würde argumentieren, dass aufgrund der jeweiligen Projekte, die Geschichten und die wichtigsten Benutzer: Ogre3D mehr Videospiel gelehnt; OSG mehr simulation Industrie gelehnt. Aber, weder ist angebunden in die arena.
Sagen wir zum Beispiel, die ich hatte:
Eine simulation schwer mit ragdoll/Menschen: ich gehe mit Ogre3D.
Eine simulation mit einer terrapage Datei: Ziemlich viel gehen würde OSG.
Plattformunabhängig
Ich kann nicht sprechen für die Linux-Seite von Ogre3D. Aber, der Haupt-Entwickler (Robert Osfield) nutzt Linux/Macs für alle seine Sachen. CMake verwendet, um den code zu kompilieren. Oder nutzen Sie einfach
apt-get
versuchen Sie beide heraus.Leistung
Ich würde Wetten die würden beide bekommen gute Leistung angesichts der richtigen tweaks (wieder, was gerendert wird... bsp Dateien, octtrees high flying sim?). Und OS verwendet, kann die Materie auf.
Visual Aussieht
Können Sie nicht bekommen alle Motor und denke, es wird gut Aussehen, ohne gute Modelle, Gelände und Shader. Es gibt wohl bessere Unterstützung für verschiedene Techniken zwischen den beiden, aber es hätte um ein konkretes Beispiel zu bekommen, ein genauer Vergleich.
Szene-Management
Wann kommt es zu diesem Abschnitt OSG ist sehr sauber und intuitiv. Das Durchlaufen der Szene, der Suche nach Knoten, ändern Staaten auf Teilgraphen, die alle sehr einfach zu tun.
Scripting
Du nicht erwähnt, aber ich dachte, ich würde werfen Sie es in. Ich würde gehen, Ogre3D hier. OSG erfordert eine 3rdParty oder benutzerdefinierte plugin. Und, Irrlicht unterstützt es nicht bei allen.
Nun, Sie Lesen meine Meinung, wie Sie ein anderes benötigt wird, einer derjenigen, die diese Website (Devmaster) ist groß, für andere zu suchen. Obwohl, es ist kurz auf details.
ps - Es ist so etwas wie ein hybrid (OSG basiert): das ist Delta3D. Es ist auch gut unterstützt und aktualisiert. Und es ist wahrscheinlich ein Ogre3D-Derivat, ist mehr simulation mag :).
InformationsquelleAutor der Antwort ginbot
Wenn Sie möchten, wählen Sie einen Motor oder eine beliebige Middleware Sie brauchen, um klar zu definieren, was Sie wollen in der Lage sein zu tun. Sie sagen, dass Sie nicht machen ein Spiel, und Sie müssen die video-codec-Unterstützung. So klingt es wie Sie wollen, 2D/3D, audio und video-Wiedergabe geschrieben mit C++.
Für 2D/3D ogre ist eine ausgezeichnete Bibliothek. Seine schon eine lange Zeit, und ist gut getestet, aber das orge ist ein Grafik-rendering-engine und nicht eine game-engine, aber es gibt auch Bibliotheken von Drittanbietern zur Hinzufügung weiterer Unterstützung. Dies ist eine MIT-Lizenz, sehr offen, schließt comercial.
Für video-Wiedergabe ( und viel mehr ) kann man sich Bibliotheken wie FFmpeg Hat LGPL-Lizenz, so dass keine statische Verlinkung auf kommerzielle apps.
Irrlicht ist ein full-blown game-engine. Diese vielleicht nützlich, aber kann nicht. Sie müssen möglicherweise ändern, um Ihr Projekt zu entsprechen, der Motor funktioniert. Dieser verwendet eine Kopie der zlib-Lizenz, die offen ist für gewerbliche Nutzung.
Denen mehr info über dein Projekt, das ist schwer zu geben, eine gute Empfehlung. Hoffe, das hilft.
InformationsquelleAutor der Antwort Byron Zalabak
Ich denke, es ist eine persönliche Wahl. Ich bevorzuge Oger über Irrlitch (schlechte API) oder OpenSceneGraph (schlechte Community). Die Ogre-source-code hat viel Qualität und es ist verwendet durch viele kommerzielle Spiele.
Es nicht unterstützt video, aber Sie können die Verwendung von third-party-Bibliotheken wie Ogre3D Video.
Wenn Sie auf Ihrem Verstand eine kommerzielle Projekt betrachten Unity 3d (die kostenpflichtige version, nicht die Kostenlose).
Alle 3d-engines sind sehr ähnlich. Der wesentliche Unterschied sind, wie shader-system funktioniert. Ogre hat ein nettes und leistungsfähiges script-system zu schreiben Shader. Ogre ist es sehr Professionell und gut dokumentiert (hat eine Menge nützlicher Beispiele und eine nette community).
InformationsquelleAutor der Antwort Victor Marzo
Oger am beliebtesten ist (aufgrund Google Trends) von denen, die Sie herausgefunden haben, so können Sie zählen auf eine starke Unterstützung der Gemeinschaft.
Darüber hinaus sollten Sie Fragen, auf https://gamedev.stackexchange.com/
InformationsquelleAutor der Antwort Michał Kuliński
Crystal Space sieht auch gut aus.
InformationsquelleAutor der Antwort Sujay Ghosh
Torque 3D scheint Weg reifer als Ogre3D, im Grunde ist es eine vollständige geblasen Game-Engine (MIT-Lizenz). Entwicklung in C++ /Visual Studio ist möglich (getestet vor ein paar Monaten), aber es hat auch eine eingebettete scripting-Sprache.
InformationsquelleAutor der Antwort lama12345