Linux | Fenster | macos | WebAssembly | |
|---|---|---|---|---|
| Zusammenstellung | ![]() | ![]() | ![]() | ![]() |
| Unit -Tests | ![]() | Noch kein CI | Noch kein CI | N / A |
Kodazität | Overalls |
|---|---|
Raz kommt von meinem Benutzernamen Raz Akhel von, wie Sie vielleicht bemerkt haben. Dies war auch als Wortspiel gedacht, da in Französisch Ràz das Akronym für "Remise à zéro" ist, was im Grunde "Reset" bedeutet. Ich hatte keine besondere Absicht hinter dieser doppelten Bedeutung. Außer vielleicht in der Hoffnung, dass die Verwendung von Raz Ihren Geist aufgrund seiner Großartigkeit zurücksetzen könnte? Nun ja.
In der modernen C ++ (17) geschrieben und mit ECS angetrieben, wird es hauptsächlich für Lernzwecke entwickelt. Es ist beabsichtigt, sehr intuitiv und einfach zu bedienen und zu basteln, während Sie versuchen, so optimiert und modular wie möglich zu bleiben.
Die Engine ist unter Windows, Linux & MacOS erhältlich. Es kann auch in einem Webbrowser über WebAssembly (mit EMSCIPTEN) ausgeführt werden.
Der Motor kann mit Lua verwendet werden, einer Skriptsprache, die sowohl zu lernen als auch zu bedienen ist. Weitere Informationen finden Sie auf der dedizierten Wiki -Seite.
Wenn Sie mit Raz beginnen möchten, besuchen Sie das Wiki. Für die Dokumentation schauen Sie sich hier an!
Razor, ein Editor auch Multiplattform, steht zur Manipulation der Engine über eine grafische Schnittstelle zur Verfügung.
Ein Discord -Server, der Raz & Razor gewidmet ist, ist ebenfalls verfügbar! Fühlen Sie sich frei zu kommen, um der Entwicklung zu folgen, Fragen zu stellen oder einfach Hallo zu sagen
| Crytek Sponza | Hylian Shield (PBR) |
|---|---|
Weitere Beispiele finden Sie hier.
| Name | Betreuer/Schöpfer | Beschreibung |
|---|---|---|
| Atmos | Razachstum | Atmosphärische Simulation |
| Midgard | Razachstum | Terrain -Verfahrensgenerierung |
| Yggdrasil | Razachstum | Baum- und Laubverfahrensgenerierung |
Wenn Sie auch selbst an einigen arbeiten, können Sie sich gerne in Verbindung setzen, damit ich sie der Liste hinzufügen kann.
| Modul | Merkmale |
|---|---|
| Animation | - Skelettdatenstruktur - Animationsunterstützung (in Arbeit) |
| Audio | - Openal Soft - Spielen/Pause/Stoppen/Wiederholen von Geräuschen - Positions -Audioquellen und Hörer - Soundeffekte (Nachhall, Chor, Verzerrung, Echo, ...) - Audioeingang (Mikrofon) Mono/Stereounterstützung |
| Daten | - Begrenzungsvolumenhierarchie (BVH) Beschleunigungsstruktur - Regie Graph Struktur - Mesh signiertes Entfernungsfeld - Dynamisches Bitset - Dateiformate: - Maschen: - GLTF/GLB -Import (mit FastGltf) - OBJ Import/Export - FBX -Import (mit dem FBX SDK) - Off Import - Bilder: - PNG, JPEG, BMP, TGA, HDR, GIF, PPM/PGM, PSD, PIC -Import (mit STB_IMAGE) - PNG, JPEG, BMP, TGA, HDR -Export (mit stb_image_write) - TGA -Import - Audio: WAV -Import/Export - Animation: BVH -Import (in Bearbeitung) |
| Mathe | - Vektoren, Matrizen und Quaternionen - Winkel (Grad/Radiant) - Transformationen (Übersetzung, Rotation, Skala) - Lärm (Perlin, Worley) |
| Physik | - Formen (Linie, Ebene, Kugel, Dreieck, Quad, Aabb, OBB) - Form/Form -Kollisionsprüfungen (in Bearbeitung) - Strahl-/Form -Kreuzungsprüfungen (in Bearbeitung) - starre Körpersimulation (in Arbeit) |
| Rendering | - OpenGL (4.6-3.3) - Vulkan (in Arbeit) -PBR (Cook-Torrance) & Legacy (Blinn-P-P-P-P-Phong) Materialmodelle - Aufschobenes Rendering mit einem benutzerdefinierten Render -Diagramm - Post -Effekte: Blüte, Tonzuordnung, SSR, SSAO, ... (in Bearbeitung) - Support für Tessellation & berechnen Shaders - Kamera (Perspektive/Orthografie) - Lichtquellen (Punkt & Richtung) - Fenster (Fenster, Tastatur-/Maus -Eingänge mit benutzerdefinierten Rückrufe) mit GLFW - Überlagerung mit IMGui - Cubemap - Normales Mapping |
| Scripting | - Lua Scripting mit SOL2 |
| Xr | - Unterstützung von Virtual Reality (VR) (mit dem OpenXR SDK) |
| Miser | - Implementierung für benutzerdefinierte ECS (Entity Component System) - Uniformisierte plattformabhängige Pfadzeichenfolgen - Protokollierung von Versorgungsunternehmen - Multithreading -Dienstprogramme, Thread -Pool -Implementierungs- und Parallelisierungsfunktionen - Plugin -Dienstprogramme, um dynamische Bibliotheken zu laden - Compiler, Enum, String, Datei, Floating Point & Type Utilities - Integration von Tracy |