Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: So Dez 22, 2024 06:36

Foren-Übersicht » DGL » News
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Mi Apr 23, 2008 21:19 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3829
Wohnort: Tespe (nahe Hamburg)
Seth liefert einen Beitrag als IOTW:
Bild

Gegeben ist eine Heightmap, aus dieser wird mittels einer Lookup Textur (ein eindimensionaler Gradient, der angibt, auf welcher Höhe, welche Textur vertreten sein soll) eine Colormap erzeugt (siehe Bild). Dies passiert allerdings noch nicht im Shader (wäre zwar möglich, würde jedoch bei jedem Rendervorgang wiederholt werden).
Diese Textur wird dann mit den drei auf die Landschaft gekachelten Texturen an den Shader übergeben. Das Verhältnis von Rot, Grün und Blau eines Pixels der Colormap beschreibt dabei das Mischverhältnis der drei Texturen an dieser Stelle. Dadurch lassen sich weiche oder auch harte Übergänge erzeugen. Übrigens muss die Colormap nicht zwangsläufig vom Programm berechnet werden, wenn man selbst eine Colormap malt und diese übergibt, kann man selbst schöne Effekte erzeugen, die Berechnung via Programm stellt nur sicher, dass ein festes Verhältnis von Höhe zum Mischverhältnis der Texturen gegeben ist.
Die Idee basiert auf einem kleinen Codeschnipsel am Ende des GLSL Tutorials, viel mehr ist es auch nicht, was der Shader macht. Man könnte die Heightmap selbst auch im Shader berechnen, nur wird es dann problematisch was die Normalen angeht. In die andere Richtung gedacht, könnte man die Ergebnistextur außerhalb des Shaders berechnen, der Nachteil wäre halt eine relativ große Textur. Normalmapping könnte das Ganze auch noch ein wenig verschönern.


Die Orginaltextur: http://www.delphigl.com/gfx/iotw/20080423_1.jpg
Eine realistische Landschaft: http://www.delphigl.com/gfx/iotw/20080423_3.jpg

Edit by Flash: Bilder ausgetausch. Das IOTW sollte etwas spektakulärer sein, als die Rohtextur.

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Apr 23, 2008 21:34 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 04, 2006 15:42
Beiträge: 78
Wohnort: Bonn
Programmiersprache: Python, C++, Delphi
Sieht sehr chique aus!
Allerdings ist Wasser mit Höhe/Tiefe nicht so toll ... aber es geht ja
nur um die Texturen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 01:10 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
Na wer sagt denn dass die dargestellte "Landschaft" auf unserem Planet ist? Könnte sich doch um eine dieser selten Fälle von besonders adhäsiv an Felswänden haftenden Dihydromonoxid handeln, oder etwa nicht? :lol:

Back2Topic:

Auf ähnliche Art kann man auch eine Detailtextur hinzufügen. Man benötigt dazu eine Textur die in jedem Kanal ein Detail enthält. Also Detail A im roten Kanal, Detail B im grünen Kanal, etc.
Wenn man nun zusätzlich noch eine Textur (Maske) erstellt die leicht von der obigen abweicht, kann man noch einiges an Variation herausholen. Vorausgesetzt man kachelt die Detailtextur.
Maske und Detailtextur einfach im Shader multiplizieren.

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 07:27 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Apr 25, 2005 17:51
Beiträge: 464
Das ist jetzt kein Textureffekt, oder? Sondern richtig Geometrie und der Shader bestimmt durch die Heigh Map nur, welche Textur genutzt wird. Frag nur weil ich grad mit Parallax Occlusion Mapping rumteste.

_________________
__________
"C++ is the best language for garbage collection principally because it creates less garbage." Bjarne Stroustrup


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 07:45 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7804
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Etwas beleuchtung wäre nett, damit man den 3D effekt besser erkennt. Auf dem Bild kann man durch die Draufsicht nämlich nix spektakuläres erkennen. Das könnte man auch ganz leicht in Photoshop malen. Eventuell würde es auch was bringen, die Ansicht leicht zu kippen.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 08:22 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Hübsch :)
IOTWs sind immer was feines ;)

Soetwas hatte ich mir auch mal gebastelt, als experiment in meinem ShaderEditor, aber irgendwie war mein ergebnis nicht so überzeugend (und Echtzeit konnte man das, was der da angestellt hat auch nicht nennen ... )

Gruß Lord Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 15:29 
Offline
DGL Member

Registriert: Di Mai 24, 2005 16:43
Beiträge: 710
Flash hat geschrieben:
Etwas beleuchtung wäre nett, damit man den 3D effekt besser erkennt. Auf dem Bild kann man durch die Draufsicht nämlich nix spektakuläres erkennen. Das könnte man auch ganz leicht in Photoshop malen. Eventuell würde es auch was bringen, die Ansicht leicht zu kippen.


Das erste Bild ist die berechnete Textur, deshalb ist das auch von oben und ohne jegliche(s) Licht oder Schatten.
Die anderen beiden Bilder stellen dann das fertige 3D Ergebnis mit Licht dar.

Vielleicht hätte ein anderes Bild als erstes ausgewählt werden sollen :P

mfg


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 19:28 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7804
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Ich hab das Bild ausgetauscht. Allerdings ist das zu groß fürs layout. Hab Phobeus deswegen ne PM geschrieben. Ich hoffe er verkleinert es nochmal.

In zukunft bitte beim einreichen der Bilder darauf achten: Das Resultat sollte als IOTW gezeigt werden nicht die Rohmaterialien. (Entsprechend markieren). Das IOTW sollte nicht Breiter als ... so 500px haben. Damit das DGL Layout nicht gesprengt wird.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 20:21 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3829
Wohnort: Tespe (nahe Hamburg)
Nun ratet mal, warum ich mich bewusst so entschieden habe? Ich dachte die anderen Bilder wären in einer hohen Auflösung interessanter und deswegen habe ich sie auch in einer größeren Auflösung gelassen, damit sie nicht ins Layout skaliert werden müssen... ;)

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 24, 2008 22:19 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7804
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Naja. Aber das andere Bild ist eines IOTW nicht würdig. Das kann jeder mit 3 Klicks in Photoshop machen. Das Bild jetzt ist viiiiel interessanter.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Foren-Übersicht » DGL » News


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.015s | 15 Queries | GZIP : On ]