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

Aktuelle Zeit: Fr Jul 18, 2025 11:47

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Löcher/Öffnungen u. dgl.
BeitragVerfasst: Mo Aug 08, 2005 21:11 
Offline
DGL Member

Registriert: Mo Aug 08, 2005 21:03
Beiträge: 2
Hallo!
Mache gerade die ersten Versuche mit OpenGL und habe folgende Frage:

Wie kann ich Figuren mit "Löchern" oder Öffnungen versehen, z.B. eine Wand mit Fensteröffnungen?
Muß ich die Wandfläche von vorneherein so anlegen, daß sich die Fensteröffnungen ergeben oder gibt es eine Möglichkeit, zunächst die Wand als Rechteck zu zeichnen und dann die Fenster einfach wiederum als "transparente" Rechtecke darüberzuzeichnen, sie also nachträglich aus der Wand auszuschneiden?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Aug 08, 2005 21:47 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Hehe...typischer Denkfehler von Anfängern.

1. Es gibt die Möglichkeit ein Loch in eine Wand zu bekommen...allerdings niemals nachträglich.
2. Transparente Objekte können nicht durch bestehende Objekte durchgucken lassen.

Lösung: Wenn du ne Wand bauen willst, dann musst du das Fenster expliziert aussparen. Wenn du die Wand plastisch gestalten willst und nicht nur als Fläche is das eh nötig.
Die oben angemerkte Möglichkeit wäre mittels Stencil Buffer das Fenster auszusparen. Allerdings würde das bedeuten mit ATOMBOMBEN auf Spatzenjagt zu gehen. Und für nen Anfänger is das eh nicht die richtige Kost.

Soviel dazu. Jetzt noch paar Tips:

1. Ließ den OpenGL Quickstart im Wiki !!
2. Ließ die Tutorials hier auf der Seite
3. Nutze das Wiki. Es bietet auch noch einen Einsteigertrampelpfad und für jeden OpenGLer gibts dort was zu finden.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Aug 08, 2005 21:51 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Die ganze Geometrie wird üblicherweise in anderen Programmen wie z.B. 3D Studio modeliert und dann ins Programm geladen. OpenGL dient dann nur dazu die Daten zu rendern. Für das .3ds Format gibt es hier auch eine Unit mit Ladefunktionen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Aug 08, 2005 22:52 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 13, 2004 11:00
Beiträge: 229
Wohnort: Steinhude
es gäbe schon nen paar möglichkeiten (zB Alphachannel in der textur, fensterscheibe in den Tiefen/stencilbuffer rendern), aber die sind weder sinnvoll noch besonder praktikabel (wiederverwendbarkeit von texturen, fehlende tiefe der entstehenden öffnung, zeichenreihenfolge...).
Allgemein ist es so, dass nur der sichtbare teil von objekten im framebuffer gespeichert ist und somit dahinterliegende inhalte nicht ohne neurendern wiederhergestellt werden können, weshalb es nicht möglich ist ist im nachhinein öffnungen in wände zu schneiden


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 09, 2005 09:04 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Für Fenster gibt es eine Möglichkeit. Indem man beim Blending die Objekte einfach falschum zeichnet. Also zuerst das Fenster und dann die restliche Wand. Dann kann man tatsächlich durch die Fensterscheibe nach ausen schauen.
Es funktioniert zwar, ist aber nicht so wahnsinnig toll. ;)

Normal macht man es so (Screenshots aus 3ds Max. P.S.: Die Screenshots sind auch mit OpenGL gemacht):


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

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: 3D Max
BeitragVerfasst: Di Aug 09, 2005 20:31 
Offline
DGL Member

Registriert: Mo Aug 08, 2005 21:03
Beiträge: 2
Genau so wars geneint!

Was ist denn 3d max/wo besteht der Zusammenhang mit Open GL?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Aug 09, 2005 21:37 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
3dsMax ist ein Modeller, mit dem du z.B. deine levels machst. Du kannst also ein 3d-Objekt erstellen und es so speichern, dass du es dann mit OpenGL wieder einlesen und darstellen kannst.

_________________
Bild

"User Error. Replace User and hit Continue."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 10, 2005 22:28 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Bevor du jetzt versuchst dich in 3DS Max einzuarbeiten versuchs lieber mit Blender. Es ist zwar wahrscheinlich am Anfang schwerer, aber es ist Kostenlos, und du kannst eigene Dateiformate erstellen, für die du dann selber einen Loader schreiben kannst. Nur so am Rande, weil ja die Beschaffung von 3DS Max u.U. nicht ganz billig ist. ;)

_________________
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  [ 8 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 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 ]