Hallo zusammen,

da ich schon sehr lange nichts mehr hier gepostet habe, will ich mal wieder ein kleines Lebenszeichen von mir und meinem Projekt geben. wink

Momentan gibt es nicht viel neues zum Herzeigen, da ich
  • noch keinen neuen PC habe, und momentan noch mit meinem leistungsschwachen Laptop arbeite.
  • Daher konzentriere ich mich momentan nicht so sehr auf das Modellieren und Leveldesign, sondern vor allem auf das Programmieren,
  • und darauf, die Unity 5 besser kennenzulernen.


Shader-Experimente:

Interessanterweise beschäftige ich mich momentan vor allem mit Shadern (kaum zu glauben grin ).
Obwohl viele Shader dafür sorgen würden, dass die Fototexturen in meinem Spiel weniger fotorealistisch aussehen, arbeite ich an speziellen Shadern, die sich nicht störend auf den Fotorealismus auswirken.

Einer dieser Shader ist ein verbesserter Unlit-Shader, der die Fototextur 1:1 darstellt, aber dennoch einen möglichst realistischen Schattenwurf auf diese Textur ermöglicht.

Zum besseren Verständnis habe ich hier 3 Screenshots (im nachfolgenden Video könnt ihr das auch in Bewegung sehen):



Bild 1: Hier sieht man einen typischen Unlit-Shader, den ich früher benutzt hatte. Das Problem dabei: die dynamischen Schatten des Players und der NPCs sehen nicht realistisch aus, da sie über die Fototextur-Schatten gelegt werden (z.B. über die Schatten der kleinen Steine am Boden - siehe gelb markierter Bereich am Screenshot).
Man sieht dann sozusagen einen Schatten innerhalb eines Schattens. Ist also nicht realistisch.

Bild 2 und 3: In meinem neu entwickelten Unlit-Shader werden die Schatten aus der Fototextur durch eine Engine-Shadowmap ersetzt. Die Schatten sehen dann fast genauso aus wie die original Fototextur-Schatten, verhalten sich aber im Spiel wie dynamische Schatten. Die dynamischen Schatten der NPCs sehen dadurch viel realistischer aus.
Auch die Helligkeit der Schatten kann mit diesem Shader beeinflusst werden. Später wird man auch bestimmte Bereiche der Textur vom dynamischen Schattenwurf ausschließen können.


Physik-Experimente:

Ansonsten experimentiere ich momentan vor allem mit Physik. Ich arbeite an einem physikalisch korrekten Movement-Script, und auch an einer physikalisch korrekten Simulation einer mittelalterlichen Steinschleuder (Mangonneau).

Wie weit eine Steinkugel fliegt, und die Höhe der Flugbahn, hängen von mehreren Faktoren ab:
  • Von Gewicht und Größe der Steinkugel.
  • Vom Gegengewicht des Wurfarms (in den großen Gegengewichts-Behälter können beliebig viele Steine (oder Sand, etc.) eingefüllt werden, um die Schussweite zu steuern - auch das wird im Spiel simuliert).
  • Vom Haken, in den die Schlinge zum Schleudern der Steinkugel eingehängt wird. Damit kann man steuern, bei welcher Stellung des Wurfarms die Steinkugel von der Schlinge freigegeben wird. Dadurch lassen sich flachere und steilere Flugbahnen einstellen. In der aktuellen Version des Programmes wird die Kugel freigegeben, sobald man die rechte Maustaste drückt. Später wird das dann aber mit dem Einhängen in die entsprechenden Haken realistischer simuliert werden.


Hier ein paar Screenshots von der aktuellen Version meiner Steinschleuder (das Model selbst ist noch lange nicht fertig - ist nur ein Platzhalter zum Experimentieren), und auch ein paar Screenshots von einem Ritterhelm, den ich mit einem 3D-Scanner erstellt habe. Ich verwende ihn momentan für Experimente mit Physical Based Shaders.




Video:

Und hier ein Video, das all diese Dinge in Bewegung zeigt. Es ruckelt jedoch ein wenig, da der Laptop, auf dem ich momentan arbeite, ziemlich schwach auf der Brust ist.

WMV-Video (ca. 60 MB)

Hier noch zwei Youtube-Videos, zum Vergleich meiner Steinschleuder-Physik mit einer echten Steinschleuder:
1. Video von der Steinschleuder (Mangonneau) in Tiffauges (ab ca, 00:42)
2. Video mit der Flugbahn des Geschoßes


Programmierung diverser Tools für Unity

Ansonsten entwickle ich momentan jede Menge Tools zur Erweiterung des Unity-Editors.
Darunter Tools für die Menüsteuerung im Spiel, für mehrsprachige Texte im Spiel (siehe Screenshot unten, am rechten Bildschirmrand). Und auch an einem eigenen Malprogramm arbeite ich (siehe Screenshot in der Mitte), das ich dann z.B. zum Erstellen der Texturen für meine Shader benötigen werde.


(in Originalgröße zeigen)

Schöne Grüße,
Thomas alias Harry. smile