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

Aktuelle Zeit: Do Mär 28, 2024 18:05

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 13 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Animierter Nebel
BeitragVerfasst: Di Jul 03, 2018 17:39 
Offline
DGL Member

Registriert: Di Jul 03, 2018 17:18
Beiträge: 3
Programmiersprache: Delphi
Hallo,

bin der Calli, 45 Jahre alt und progge seit Delphi 3 Pascal. Mittlerweile XE8.
Aktuell sitze ich an einer Grafik / Lasershowvorschau wo ich nur mit GLFog und Triangles arbeite.
Sieht schon "nett" aber irgendwie tot aus. In der Praxis steht irgendwo ne Nebelmaschiene und je nach Wind
wandern die Wolken mehr oder weniger dicht durch die Strahlen.
Traum wäre wenn man durch die "Flächen" animierte Nebelwolken wandern lassen könnte, habe ein bisschen was über
Partikelsysteme gelesen aber alles in allem steh ich wie der Ochs vorm Berge.

Hat sowas von den Anwesenden schon mal jemand gemacht und kann mir etwas "vorkauen" ?? :-)


Gruss

Calli


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 15:45 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Meinst du so etwas, wie der Rauch von einem Feuer bei einem Games, welcher sich zur Laufzeit verändert ?

Im einfachsten Fall, könnte man dies mit einer Textur lösen, welche Alpha-Blending hat.

Bei deinem Anhang, kann man nicht erkennen, was mit Nebel zu tun hat.

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 16:00 
Offline
DGL Member

Registriert: Fr Mai 11, 2012 13:25
Beiträge: 229
Programmiersprache: c++, c, JavaScript
Ich denke es ist gar nicht so einfach, weil die Laser hier infinitesimal dünne Polygone dargestellt sind und Du wahrscheinlich das Beleuchten einer inhomogen verteilten Nebelpartikeldichte darstellen willst.
Ich würde die Laserstrahlen raytracen und mit einer 3D-Verteilungsfunktion des Nebels matchen, dann sollte es gehen.
Wird aber deutlich rechenintensiver.

_________________
"Pixel, ich bin dein Vater."
-Darf Shader


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 16:04 
Offline
DGL Member

Registriert: Fr Mai 11, 2012 13:25
Beiträge: 229
Programmiersprache: c++, c, JavaScript
Bzw. 4D-Verteilungsfunktion brauchst Du für den Nebel.
Du checkst erst, wo dein viewRay in den Stral eintaucht, und wo er wieder rausgeht, dann teilst Du die resultierende Strecke in Punkte auf, schaust an diesen Punkten in die Verteilungsfunktion und addierst die Intensität auf, entlang deines Viewrays, vom Beobachter weg.
Bracust dafür z.B. Intersection Zylinder <-> Gerade

_________________
"Pixel, ich bin dein Vater."
-Darf Shader


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 16:36 
Offline
DGL Member

Registriert: Di Jul 03, 2018 17:18
Beiträge: 3
Programmiersprache: Delphi
Hi,
danke für die Antworten. Hier mal ein Video wo das gemacht wird was ich gern hätte.

https://vimeo.com/173047887

Denke da wir "irgendwas mehr oder weniger durchsichtiges" drüber gelegt...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 16:59 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Spot-Licht könnte ein Anhaltspunkt sein.

Wen ich das Video angucke, könnte man sowas auf der 2D-Ebene lösen. Der Nebel als Textur, welche die ganze Fläche füllt. Die Lichtstrahlen im Shader berechnen.

Gucke mal das hier an: https://wiki.delphigl.com/index.php/Laz ... eleuchtung

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 17:44 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Ich habe da kurz etwas gebastelt.

Ist das in etwa was du dir wünscht ?


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Mi Jul 04, 2018 22:03 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Dies kommt doch deiner Lichtshow schon richtig nahe.


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Do Jul 05, 2018 04:01 
Offline
DGL Member

Registriert: Di Jul 03, 2018 17:18
Beiträge: 3
Programmiersprache: Delphi
Hallo,

sieht ein bisschen nach Fraktalgenerator aus :-)
Aber es sieht besser aus als alles was ich bis jetzt hatte...
In den Videos ist der Nebel nur auf Ebene der Laser sichtbar.
Der Laser bricht sich in den Schwaden...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Do Jul 05, 2018 11:40 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hallo,

meiner Meinung nach wurde bei dem Video was du geteilt hast eine einfache Rauch-Textur verwendet, die über die Textur Koordinaten ein wenig verschoben wurde. Wenn du mehr "Dynamik" haben willst kannst du auch 2 Rauch Texturen verwenden und diese übereinander Blenden. Deine Farbigen Flächen hast du ja schon. Dort noch ein paar einfache Texturen drauf zu packen sollte relativ einfach sein. Zu Texturen findest du im Wiki eigentlich genug Artikel :)

Gruß Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Do Jul 05, 2018 17:11 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Zitat:
sieht ein bisschen nach Fraktalgenerator aus

Das Mandelbrot, war etwas bestehendes. Aber anstelle von diesem erzeugst du ein Plasma im Shader, kombinierst es mit den Lichtkegeln.
In Google "plasma glsl" eingeben, dann findet man genügend Code für das Plasma.

Hier findet man genügend Shader-Beispielel: http://glslsandbox.com/

Das wäre ideal für eine Licht-Show: http://glslsandbox.com/e#47796.0


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Do Jul 05, 2018 23:48 
Offline
DGL Member

Registriert: Fr Mai 11, 2012 13:25
Beiträge: 229
Programmiersprache: c++, c, JavaScript
Ich würde es wie gesagt raytracen, sieht bestimmt cool aus.
Manche Leute machen echt abgefahrenes Zeug in einem einzelnen Pixelshader.
Hier hat einer ne ganze Stadt in einen shader reingecoded:
https://www.shadertoy.com/view/XdyyDV

_________________
"Pixel, ich bin dein Vater."
-Darf Shader


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animierter Nebel
BeitragVerfasst: Fr Jul 06, 2018 20:27 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Zitat:
Hier hat einer ne ganze Stadt in einen shader reingecoded:
:shock:
Es ist schon gewaltig, was man alles mit GLSL machen kann. :shock:

Ich wollte den Shader-Code in mein Programm portieren, ich musste es um ein paar Uniform-Variablen ergänzen, und eine main() hinzufügen.
Aber das ganze braucht zu viel Resourcen für meine Intel 4000 GPU. Das Ausgabefenster ist blockiert. Und der CPU-Lüfter bläst auch schneller.

Aber interessanterweise, die WEB-GL Version läuft, auch wen sie ein wenig stockt.

Nachtrag:
Jetzt läuft es, ich hatte mit iResolution einen Fehler.
Viel grösser wie das Bild im Anhang darf ich es aber nicht machen, ansonsten habe ich eine Dia-Show.

Und eine komischen Kachel-Effekt habe ich noch.


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
OpenGL


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 34 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.091s | 17 Queries | GZIP : On ]