Gruppe
======

"Die Zwei"
Markus Trenkwalder, 9426035 
Henning Scharsach, 9551348


Systemvoraussetzungen
=====================

Das ganze sollte unter nVidia und ATI-Karten ab DX9.0 laufen, also ab
GeForceFX/NV30 bzw. ATI9500/R300 oder höher. Primär entwickeln wir z.Zt. 
auf ATI-Karten.


Ziele
=====

Wir planen, ein Echtzeitdemo zu implementieren, das environment gemappte
Wassertropfen in einen See fallen laesst. Dies erzeugt Wellen ... naja,
vieleicht doch etwas zu optimistisch. Aber die Effekte, die wir planen zu
implementieren, sind bereits enthalten. Da wären also:

- Wasserwellen im Vertex Shader, die auf herunterfallende Tropfen / Kugeln 
halbwegs realistisch reagieren (Wellenausbreitung).
- Reflexion (wenn möglich winkelabhängig) und Refraktion im Pixel Shader.
- dynamisches Cube-Mapping auf den herunterfallenden Objekten / Tropfen - 
in wie weit die gegenseitige Reflexion beschränkt ist, müssen wir erst noch 
sehen ;-)
- alles weitere, wofür wir danach noch zeit haben :)


Umgebung
========

Die Szene fuer die Demonstration ist eine Landschaft, in dessen Mitte sich ein
kleiner See befindet. Er dient der Demonstration der Wasseroberflaeche. Die
Landschaft ist in einen Wuerfel eingebettet, an dessen Innenseite ein Horizont
gemappt ist. Fuer alle Effekte, die wir in die Demo einbauen, werden eigene
Objekte in die Landschaft gesetzt. Nachdem wir selbst erst testen müssen, wie 
groß ein Objekt sein muss, um das Environment Mapping vernünftig zu sehen, kann
es auch sein, dass wir zuerst das Environment Mapping auf grossen Kugeln vorführen,
und dann erst kleine Kugeln in das Wasser fallen lassen ...


Entwicklungsumgebung
====================

Zielsystem soll Win32 sein. Entwickelt wird mit "Visual Studio .Net". Die
Effekte werden so weit wie moeglich in Hardware implementiert, als API
verwenden wir die OpenGL ARB_fragment_program extensions, möglicherweise unter 
Zuhilfenahme des Cg Frameworks (für die Verwaltung der vertex/fragment programs).



Steuerung
=========

l. Maustaste:	Drehung um den Teich in der Mitte
r. Maustaste:	Zoomen
"f":		Fullscreen on / off
"r":		Regen an / aus
"+": 		Mehr Regen
"-":		Weniger Regen
"w":		Erzeugt grosse Wellen
"d":		schaltet in den Zeichenmodus, man kann nun mit der linken Maustaste
		ins Wasser zeichnen. Nochmals "d" schaltet den Zeichenmodus wieder aus.
"p":		Schaltet zwischen einfachem Shader (Nur Reflexion) und komplexem
		Shader (Wasseranimation, Transparenz) um.
"q" / ESC:	Quit