Flex Engine ist eine persönliche Spiele-Engine. Flex Engine ist weder eine kommerzielle Spielmotor noch für den öffentlichen Gebrauch.
Bauen von Flex
Siehe Build.md
Bemerkenswerte Merkmale
- Vulkan Rendering Backend (Vulkanrenderer.cpp)
- In-Game Scripting Language Compiler/Editor & Virtual Machine (Virtualmaachine.cpp)
- Konditionelle Checksumbasis Shader-Neukompilation (ShaderCompiler.cpp)
- Überwachung der Dateimodifikation für Texturen, Maschen, Vorbereitungen, Shader, Konfigurationsdateien usw. (Resourcemanager.cpp)
- Szenenditor mit Serialisierung (basescen.cpp)
- Editor -Tools (Transformation Gizmo, Eigenschaftseditor, Keybinding -Editor usw.) (editor.cpp)
- Grundlegende Tools für Erfassungs-/Inspektionsinstrumente für Profile
- Unterstützung für Windows & Linux
- Rendering:
- Marching Cubes Terrain Generator & Rendererer
- Gerstner Wave Ocean Rendererer
- Rechteckige Flächenlichter (direkt diffuse und spiegelles Direktbereich)
- Physisch basiertes Schattierungsmodell
- Bildbasierte Beleuchtung
- Bildschirmraum Umgebungsverschluss
- Stabile kaskadierte Schattenzuordnung
- Temporale Anti-Aliasing
- Schriftart & Rendering von Signed Distance Field (SDF)
- GPU-basierte Partikelsimulation
Verfahrensgelände auf der GPU erzeugt
Gerstner Wave Ocean Simulation
Kaskaded Shadow Mapping
Zwei Millionen Partikel simuliert und vollständig auf der GPU gerendert
Profiler-Overlay zeigt eine Aufschlüsselung der CPU-Zeit eines einzelnen Frame
Einige Editor Windows
Screen-Raum-Umgebungsverschluss (SSAO)
GBUFFER (obere links nach unten rechts): Position, Albedo, Normal, endgültiges Bild, Tiefe, Metallic, AO, Rauheit
Blick auf den Herausgeber


Weitere Screenshots finden Sie hier
Abhängigkeiten
Flex Engine verwendet die folgenden Open-Source-Bibliotheken:
- Kugel - Kollisionserkennung und starre Körpersimulation
- Freetyp - Schriftladen
- GLFW - Fenstererstellung, Eingangsbehandlung
- GLM - Mathematikoperationen
- IMGUI - Benutzeroberfläche
- Openal - Audio -Laden und Wiedergabe
- STB - Bildbelastung
- CGLTF - Netzbelastung
- Volk - Vulkan Meta -Lader
Lizenz
Flex Engine ist unter der MIT -Lizenz lizenziert. Weitere Informationen finden Sie unter Lizenz.MD.
Anerkennung
Ein großes Dankeschön muss den folgenden Personen und Organisationen für ihre unglaublich nützlichen Ressourcen gegeben werden:
- Baldur Karlsson von github.com/baldurk/renderdoc
- Alexander Überweltbewohner von Vulkan-tutorial.com
- Sascha Willems von github.com/saschawillems/vulkan
- Joey de Vries von Learnopengl.com
- Andrew Maximov für das Pistolmodell und Texturen Artisaverb.info/pbt.html
- Freepbr.com für hochwertige PBR-Texturen
- Alle Autoren und Mitwirkenden der oben genannten Open-Source-Bibliotheken
Blog
Bleiben Sie (etwas) über dieses Projekt in meinem Blog unter ajweeks.com/blog auf dem neuesten Stand