Du bist nicht angemeldet.

Werbeanzeige

1

12.10.2015, 08:24

Höhenfeld für Ozean-Darstellung (nach Tessendorf)

Guten Tag,
ich versuche mich gerade daran, ein Höhenfeld für die grafischen Darstellung eines Ozeans zu erzeugen. Orientiert habe ich mich dabei an der Arbeit von Jerry Tessendorf.
Nun bekomme ich erste Ergebnisse, bin mir aber nicht sicher, ob diese so auch korrekt sind.
Hat hier schon mal jemand am gleichen Thema gearbeitet und kann über meine prototypische Implementierung drüber schauen?
Den Code und Beispiel Bilder werde ich dann nachreichen (sind noch auf meinem anderen Pc), sollte sich jemand finden.

(Link)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

2

18.10.2015, 11:55

Was kommt dir denn an deinem Ergebnis falsch vor?
@D13_Dreinig

3

22.10.2015, 15:03

Hallo David! Schön, dass sich doch jemand ein wenig mit dem Thema auseinander setzen möchte. ;)

Ich habe mittlerweile schon einige Fehler beseitigt und das Resultat hat schon Ähnlichkeit mit einer ruhigen Wasseroberfläche,
wobei ich später doch noch mal genauer über den Code drüber schauen muss.

Welche Fragen aber noch offen ist:

Das Phillipsspektrum hat einen Anhang, welcher wohl Konsinusfaktor genannt wird: |k*w|²
k und w sollten meiner Auffassung nach reale Vektoren sein, das Produkt aus beiden ein Skalar, welcher nach dem Quadrieren positiv wäre, demnach wäre es nicht nötig mit dem Betrag zu rechnen. Wo ist bei dieser Überlegung mein Fehler? Deute ich die Betragsstriche falsch?

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

4

22.10.2015, 16:49

Genau §\hat{k}§ und §\hat{\omega}§, sind reale Vektoren. Die "Betragsstriche" sollen hier vermutlich darauf hinweisen, dass der Wert normiert wird. Da §\hat{k}§ ja im Normalfall eine Länge != 1 hat (der Windvektor liegt vermutlich schon normiert vor, wenn nicht fließt das natürlich auch mit ein). Der Exponent ist übrigens nicht konstant sondern eher als Parameter gedacht, mit dem du die Wasseroberfläche in Windrichtung "ausrichten" kannst, d.h. also beliebig wählbar. Aber generell hast du recht, das Ergebnis des Skalarprodukt ist natürlich positiv, aber du musst anschließend durch §|\hat{k}||\hat{\omega}|§ teilen weil ja: §\hat{k}\cdot\hat{\omega} = |\hat{k}||\hat{\omega}|cos \sphericalangle(\hat{k},\hat{\omega})§.
@D13_Dreinig

5

23.10.2015, 09:42

Vielen Dank für deine Erklärung! :thumbsup:
Auf's normieren statt Betrag hätte ich im Bezug auf Vektoren ja auch kommen können.
Kaum ist der Vektor k normiert, sieht mein Ergebnis vollkommen anders aus und hat große Ähnlichkeit mit dem von Tessendorf erzielten Resultat.

Vielen Dank nochmal!

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

6

23.10.2015, 09:47

Super, freut mich! :)
@D13_Dreinig

Schrompf

Alter Hase

Beiträge: 1 428

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

7

23.10.2015, 14:40

Bilder! :-)
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

8

26.10.2015, 16:28

Hey Schrompf, hab deine Nachricht gerade erst gelesen.
Hier mal ein Höhenfeld mit den Parametern Lx=Ly=1000, M=N=512, V=30

http://www.bilder-upload.eu/show.php?fil…-1445874072.png

Gruß!

Schrompf

Alter Hase

Beiträge: 1 428

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

9

26.10.2015, 16:51

Schick! Viel Erfolg beim weiteren Basteln. Und wenn Du mal was Dreidimensionales oder gar Bewegtes hast, würde mich das auch interessieren.
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

10

26.10.2015, 16:55

Vielen Dank! Ich halte euch auf dem laufenden.
Ein wenig Feedback schadet ja auch nie. ;)

Werbeanzeige