Hyperion-Engine
Hyperion Engine ist eine in C++ geschriebene 3D-Spiele-Engine. Derzeit ist es auf Windows, macOS und Linux ausgerichtet und unterstützt C#-Skripting über .NET Core.
Dynamische diffuse globale Beleuchtung (DDGI) | GPU-Partikel |
---|
| |
Zu den Funktionen gehören:
- Multithreading mit Tasksystem
- Entitätskomponentensystem
- PBR und Nachbearbeitung
- Hardware-Raytracing-Unterstützung für Reflexionen und globale Beleuchtung
- Skelettanimation
- C#-Skripterstellung mit .NET Core
- Weitere Reflexions- und globale Beleuchtungstechniken wie z
- Reflexionen im Bildschirmbereich
- Voxel-Kegelverfolgung
- Umgebungssonden
- GPU-Okklusions-Culling
- GPU-Partikel
Gebäude
Hyperion verwendet CMake zum Konfigurieren und Generieren der Build-Dateien für C++ und C#. Stellen Sie abhängig von Ihrer Zielplattform sicher, dass die folgenden Abhängigkeiten installiert sind:
Windows
- Visual Studio 2019 oder neuer
- vcpkg (und stellen Sie sicher, dass die Umgebungsvariable VCPKG_INSTALLED_DIR festgelegt ist)
- Vulkan SDK
- SDL 2
- OpenAL
- Aufzählungszeichen (optional)
- FreeType (optional)
- GStreamer (optional, nur für WebRTC-Streaming erforderlich)
macOS
- Xcode-Build-Tools (Clang-Compiler)
- Homebrew (um notwendige Abhängigkeiten zu installieren)
- MoltenVK (Vulkan SDK-Wrapper für Metal)
- SDL 2
- OpenAL
- Aufzählungszeichen (optional)
- FreeType (optional)
- GStreamer (optional, nur für WebRTC-Streaming erforderlich)
Linux
- GCC oder Clang
- Vulkan SDK
- SDL 2
- OpenAL
- Aufzählungszeichen (optional)
- FreeType (optional)
- GStreamer (optional, nur für WebRTC-Streaming erforderlich)
Submodule
Sie sollten außerdem sicherstellen, dass Submodule für das Repo initialisiert und aktualisiert werden. Die wichtigsten, die Sie benötigen, sind:
- .NET Core Runtime (https://github.com/dotnet/runtime)
- glslang (https://github.com/KhronosGroup/glslang)
Einige optionale Untermodule umfassen:
- xatlas (Wenn Sie Lightmaps backen möchten) (https://github.com/jpcy/xatlas)
- libdatachannel (Für WebRTC-Unterstützung) (https://github.com/paullouisageneau/libdatachannel)
git submodule update --init --recursive