--- Project kc3d engine 3 ---




Infos

Codename: kc3d engine 3
Projekttyp: Realtime 3D-Engine
Programmiersprache: C++
Grafik-API: DirectX 10
Kompatibilität: Win32
Entwicklungsdauer: April 2010 - Juni 2010 (Pause)
ab ca. September 2010 - ?
Lizenz: Free / OpenSource
Sonstiges: -


Nach einer längeren Pause hab ich mich dazu entschlossen, nun wieder mit 3D-Programmierung auf DirectX10-Basis anzufangen. DirectX 11 ist zwar bereits verfügbar, aber da ich aktuell keine DX11-fähige Grafikkarte besitze, werde ich vorerst bei DX10 bleiben.
Die Engine (welche vorwiegend für das Rendern von Outdoor-Szenen mit einem Terrain optimiert sein wird) entwickle ich für eigene Zwecke. Am Ende sollen die Fähigkeiten der Engine in einer Techdemo auf die Probe gestellt werden.
Bezüglich dem Releasetermin möchte ich noch keine Angaben machen, denn schliesslich entwickle ich die Engine in meiner Freizeit, je nach Lust und zur Verfügung stehender Zeit.


Ziele

> weniger ist mehr (schlanke Engine; geringer Feature-Umfang)
> einfache Handhabung, dafür Einbussen bei der Flexibilität
> hohe Performance und Stabilität
> auf Shader 4.0-Hardware spezialisiert, keine Abwärtskompatibilität
> Dokumentation und Tutorials mit Samples erstellen
> mehrere DLLs (Physik, DirectX, Scene und Utilities)

Bezüglich der Einschränkung der Kompatibilität. Eine breite Unterstützung von diversen Computern (Windows, Mac, Linux, DirectX, OpenGL, ...) ist schön und gut, aber...: Dies würde einen nicht zu unterschätzenden Mehraufwand bedeuten, den ich mir sparen will; nich zuletzt deshalb, weil bereits heute wahrscheinlich die Hälfte aller PCs von potentiellen Usern einer 3D-Engine über eine DX10-kompatible Grafikkarte verfügen.


Feature-Liste (provisorisch)

Allgemeines / Szene:
> Scene-Manager
> Resource-Manager
> Terrain (mit Vegetation)
> Modelldateien (eigenes Modellformat, Importer für md5-, x- und 3ds-Files)
> LOD-System
> Bibliothek mit diversen Hilfsfunktionen (Utils)
> DirectInput8 für Keyboard- und Mausabfragen
> XAudio2 als Sound-API
> DirectShow für Musikwiedergabe

Beleuchtung
> Phong
> Light / Atmospheric Scattering
> Soft Shadows (Shadow Mapping)
> Lightmapping (für statische Lichtquellen)
> Normal- & Parallax-Mapping
> Ambient Occlusion

Simulation:
> Wasserdarstellung (dynamische planare Reflektion)
> Rauch, Nebel, Regen
> Sun-Flares
> Sterne
> Materialien (Plastik, Metall, Marmor, Stein, Glas)

Post-Process-Effekte:
> Iris-Simulation (DoF, Light-Adaptation, Bloom, Motion-Blur, Vignettierung)
> HDR-Rendering
> Hitzeverzerrungen
> Volumetric Light Scattering (aka God Rays or Crepuscular Rays)
> Spassfilter (Sepia, Radial Blur, etc.)


Media Files

> Screenshots


Downloads

> Techdemo (Beta, DX10), ~8 MB
> kc3d engine 3 (Alpha 0.9) inkl. Demo Applikation, ~4.5 MB
> Shader 4.0 Debugger (v1.0, D3DX10), ~0.5 MB