
Der Fokus liegt auf der einfachen Verwendung, Erweiterbarkeit, Leistung und Bereitstellung von Rendering -Funktionen für Planet -Skala -Umgebungen und Ermöglichung von Raumspielen und Simulationen.
ET steht für "Extra Terrestial", da diese Technologie eines Tages ins Weltraum geht.
Dieses Projekt wird aktiv entwickelt, und während eine breite Palette von Merkmalen implementiert wird und die Gesamtarchitektur sich einem zusammenhängenden Zustand nähert, dürften viele der geplanten Verbesserungen eine große Übertragung der Codebasis berühren. Daher ändert sich die Schnittstelle des Master -Zweigs relativ häufig in getrennten Zweigen.



Das Rendering basiert auf modernen Prinzipien, einschließlich physikalisch basiertem Rendering. Das datengesteuerte Materialsystem ermöglicht benutzerdefinierte Shader und Parameter -Vererbung durch Materialinstanzen (ähnlich wie UE4). Es wurde eine Vielzahl von Rendering -Funktionen für die Raumsimulation implementiert, wie z.

Das Projekt ist in mehrere Bibliotheken aufgeteilt. Bibliotheken auf niedriger Ebene wie Kern oder Rendering können unabhängig von hohen Ebenen wie dem Framework verwendet werden. Viele Funktionen verfügen über Schnittstellen und Implementierungen, die die Überschreitung der Funktionalität ermöglichen. Wenn Sie Ihren eigenen Renderer implementieren oder ein anderes Dateisystem unterstützen möchten, können Sie dies tun.
Viele leistungskritische Abschnitte wurden mit Aspekten wie der Cache -Lokalität programmiert. Der Renderer verwendet eine optimierte Szenenstruktur und kann unabhängig von der Spielszene der Gameplay operieren. Gameplay -Funktionen werden mithilfe eines archetypbasierten Entitätskomponentensystems implementiert.
Alles, was kein Verhalten ist, kann mit Daten beschrieben werden. Der Ressourcenmanager ermöglicht benutzerdefinierte Anlagestypen. Die Reflexion von Datenstrukturen ermöglicht eine automatisierte Serialisierung und Deserialisierung des Inhalts. Der Work In Progress -Editor ermöglicht eine einfache Bearbeitung und steuert den Workflow von Inhaltserstellungstools bis hin zu optimierten Motorformaten.

Für Visual Studio 2017:
git clone https://github.com/Illation/ETEngine
cd ETEngine/Projects/Demo
cmake -G "Visual Studio 15 2017 Win64" -S . -B build
cmake --build build --target all --config Develop
cmake --build build --target install
cmake --build build --target cook-installed-resources-EtEngineDemo
Weitere Informationen (einschließlich Unit -Tests und Inhaltskoch) finden Sie in der Build -Dokumentation.
Aufgrund eines Problems mit Bibliotheksabhängigkeiten funktioniert CI derzeit nicht. Das Projekt wurde jedoch außerhalb von automatisierten Build -Skripten erstellt und funktioniert einwandfrei.
Dieses Projekt begann 2016 als OpenGL -Grafik -Framework basierend auf der "Overlord Engine" (DX11) aus dem Grafikprogrammierkurs an der Howest University
Parallel dazu schrieb ich meine Abschlussarbeit zum Realtime Planet -Rendering und 2017 fusionierte ich die beiden Projekte in diesen Motor.
Seitdem habe ich eine Vielzahl von Grafik- und Gameplay -Funktionen hinzugefügt, aber aufgrund des Designs zum Zeitpunkt wurde immer schwieriger.
Daher lag der Schwerpunkt im Jahr 2019 auf die Verbesserung der Architektur und die Konzentration auf die Verwendbarkeit und Erweiterbarkeit, und die Codebasis wurde seitdem nahezu vollständig umgeschrieben.
0.0:
0.1:
0,2:
0,3:
0,4:
0,5:
0,6:
0,7:
Eine Liste von Bibliotheken und Lizenzen von Drittanbietern finden Sie hier.






