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

Aktuelle Zeit: Do Jul 03, 2025 11:36

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



Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Sa Apr 26, 2003 21:24 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 02, 2002 18:06
Beiträge: 299
Wohnort: Dresden
Ich hab mal eine Frage: In "echten" Spielen kommt man ja nie an den Rand einer Skybox, egal wie groß die Spielwelt ist. Bewegt sich die Skybox mit? Oder ist diese soooo groß, das man nie an den Rand kommt? Dann dürfte es aber ein Problem mit dem Frustum geben.

_________________
"Ich würde ja gern die Welt verändern, aber Gott gibt mir den Quelltext nicht"


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Apr 26, 2003 21:35 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
die skybox bewegt sich einfach mit indem du sie vorm translaten zeichnest...
um den Problemen mit dem Farclipping usw. aus dem Weg zu gehen kannst du die Skybox z.B. sogar nur ca. 10 groß machen...
musst vorher einfach depthtest ausschalten...

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 08:32 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 02, 2002 18:06
Beiträge: 299
Wohnort: Dresden
Ja O.K. so was ähnliches hab ich mir auch gedacht, aber welche ist die beste Variante?

_________________
"Ich würde ja gern die Welt verändern, aber Gott gibt mir den Quelltext nicht"


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 10:45 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
HomerS hat geschrieben:
Ja O.K. so was ähnliches hab ich mir auch gedacht, aber welche ist die beste Variante?

Am besten zeichnest du deine Skybox am Anfang der Szene :
- Rotiere deine Szene entsprechend der Betrachterausrichtung (nur rotieren, aber NICHT transformieren)
- Deaktiviere dann mittels glDepthMask(False) das Schreiben in den Tiefenpuffer, damit deine Skybox keine Objekte überlappt
- Zeichne deine SkyBox mit recht geringen Ausmaßen (10x10x10), so dass du keine Probleme mit der Farclipping-Plane bekommst
- Aktiviere das Schreiben in den Tiefenpuffer wieder
- Rotiere und transformierer entsprechend der Betrachterausrichtung- und Position
- Zeichne deine Szene

So bewegt sich die Skybox mit dem Betrachter mit, und macht weder Clippingprobleme gegen dir Farplane noch gegen deine Levelgeometrie.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 19:25 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
ist das jetzt nicht einmal zu viel rotiert??

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 20:29 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nein, denn vor dem Zeichnen der Skybox sollte man natürlich die Matrix via glPushMatrix auf den Stack legen, um sie nach dem Zeichnen der Skybox via glPopMatrix wieder zurückzuholen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 20:35 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
ok :rolleyes:

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 20:44 
Offline
DGL Member

Registriert: Sa Sep 21, 2002 21:32
Beiträge: 346
Wohnort: Eilsum (Nahe Emden)
Hat irgendwer eigendlich schonmal getestet, wie sich eine gestauchte (Halb-)Kugel als skybox macht? Müsste doch an sich der Realität am nächsten kommen ......

_________________
Es sind immer die guten,
welche zu früh von uns gehen müssen...

Meine bislang 13 Open Gl - Tuts findet ihr auf www.dcw-group.net
Neu! Ein großer Teil der Demos nach Kylix übersetzt!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 20:49 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
DCW_Mr_T hat geschrieben:
Hat irgendwer eigendlich schonmal getestet, wie sich eine gestauchte (Halb-)Kugel als skybox macht? Müsste doch an sich der Realität am nächsten kommen ......

Hab ich schonmal probiert.Die Technik nennt sich SkyDome, und macht einen sehr realistischen Eindruck.Allerdings aber nur dann, wenn du den Himmel als Farbverlauf darstellst.Wenn du so wie bei einer SkyBox ein umringendes Terrain darstellen willst, ist ein SkyDome eher ungeeignet, zumal das Erstellen der Texturen für nen SkyDome recht umständlich wäre.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Apr 27, 2003 20:50 
Offline
DGL Member

Registriert: Do Mai 30, 2002 18:48
Beiträge: 1617
jo, sowas geht prima.... skydomes sind auch was schönes - kommt halt drauf an, was man haben will


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 » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 15 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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]