|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
noop
Anmeldungsdatum: 04.05.2005 Beiträge: 259
|
Verfasst am: 22.08.2006, 10:34 Titel: OpenGL,Objekte überdecken |
|
|
Ich lese gerade das Tutorial über OpenGL von Stormy(erstmal danke dafür).
Jetzt ist mir aufgefallen, dass bei mir das übereinanderlagern wie im Tutorial nicht funktioniert.
Bei mir bleibt einfach das erste Objekt an oberster Stelle.
Was mache ich falsch?
Code: |
option explicit
' Einbindung von OpenGL
#include once "GL/gl.bi"
#include once "GL/glu.bi"
' Festlegung der Konstanten, die für den Bildschirm wichtig sind
const scrnX = 640
const scrnY = 480
const depth = 32
const fullscreen = &h0 ' Fenstermodus
screenres scrnX,scrnY,depth,,&h2 OR fullscreen
' Konfiguration von OpenGL
glMatrixMode(GL_PROJECTION) ' Matrix definieren
glLoadIdentity
glViewport(0,0,scrnX,scrnY) ' Achse festlegen
glOrtho(0,scrnX,scrnY,0,-128,128)
glMatrixMode(GL_MODELVIEW) ' Deaktivierung des Rendern der Rückseiten
glEnable(GL_CULL_FACE)
glCullFace(GL_BACK)
glEnable GL_TEXTURE_2D ' Texturen aktivieren
glLoadIdentity
glEnable(GL_DEPTH_TEST) ' Tiefentest
glDepthFunc(GL_LESS)
glEnable(GL_ALPHA_TEST) ' Alphatest
glAlphaFunc(GL_GREATER, 0.1)
do
glClear GL_COLOR_BUFFER_BIT OR GL_DEPTH_BUFFER_BIT
glTranslatef 100,100,0
glColor3ub 0, 0, 255
glBegin GL_QUADS
glVertex2i 0, 50 '' LINKS UNTEN (1. Koordinate)
glVertex2i 50, 50 '' RECHTS UNTEN (2. Koordinate)
glVertex2i 50, 0 '' RECHTS OBEN (3. Koordinate)
glVertex2i 0, 0 '' LINKS OBEN (4. Koordinate)
glEnd
glLoadIdentity
glTranslatef 125,125,1
glColor3ub 255, 0, 0
glBegin GL_QUADS
glVertex2i 0, 50 '' LINKS UNTEN (1. Koordinate)
glVertex2i 50, 50 '' RECHTS UNTEN (2. Koordinate)
glVertex2i 50, 0 '' RECHTS OBEN (3. Koordinate)
glVertex2i 0, 0 '' LINKS OBEN (4. Koordinate)
glEnd
glLoadIdentity
glFlush
flip
screensync
loop until multikey(&h01) ' Verlasse die Schleife sobald Escape gedrückt wird
|
mfg noop |
|
Nach oben |
|
|
Stormy
Anmeldungsdatum: 10.09.2004 Beiträge: 567 Wohnort: Sachsen - wo die schönen Frauen wachsen ;)
|
|
Nach oben |
|
|
noop
Anmeldungsdatum: 04.05.2005 Beiträge: 259
|
Verfasst am: 23.08.2006, 06:59 Titel: |
|
|
Hi,
Rot ist bei mir hinten.
Auch wenn ich 1 und 0 vertausche.
radeon 9200 se agp
128mb |
|
Nach oben |
|
|
Eastler_dart
Anmeldungsdatum: 25.09.2005 Beiträge: 177 Wohnort: Baden-Würtemberg + Sachsen
|
Verfasst am: 23.08.2006, 17:44 Titel: |
|
|
bei mir ist auch rot vorne (W98SE FB 0.16Win 4mb-Grafik)
hab das programm noch testweise erweitert, jetzt von
Code: |
option explicit
' Einbindung von OpenGL
#include once "GL/gl.bi"
#include once "GL/glu.bi"
' Festlegung der Konstanten, die für den Bildschirm wichtig sind
const scrnX = 640
const scrnY = 480
const depth = 32
const fullscreen = &h0 ' Fenstermodus
screenres scrnX,scrnY,depth,,&h2 OR fullscreen
' Konfiguration von OpenGL
glMatrixMode(GL_PROJECTION) ' Matrix definieren
glLoadIdentity
glViewport(0,0,scrnX,scrnY) ' Achse festlegen
glOrtho(0,scrnX,scrnY,0,-128,128)
glMatrixMode(GL_MODELVIEW) ' Deaktivierung des Rendern der Rückseiten
glEnable(GL_CULL_FACE)
glCullFace(GL_BACK)
glEnable GL_TEXTURE_2D ' Texturen aktivieren
glLoadIdentity
glEnable(GL_DEPTH_TEST) ' Tiefentest
glDepthFunc(GL_LESS)
glEnable(GL_ALPHA_TEST) ' Alphatest
glAlphaFunc(GL_GREATER, 0.1)
do
glClear GL_COLOR_BUFFER_BIT OR GL_DEPTH_BUFFER_BIT
glTranslatef 100,100,0
glColor3ub 0, 0, 255
glBegin GL_QUADS
glVertex2i 0, 50 '' LINKS UNTEN (1. Koordinate)
glVertex2i 50, 50 '' RECHTS UNTEN (2. Koordinate)
glVertex2i 50, 0 '' RECHTS OBEN (3. Koordinate)
glVertex2i 0, 0 '' LINKS OBEN (4. Koordinate)
glEnd
glLoadIdentity
glTranslatef 125,125,1
glColor3ub 255, 0, 0
glBegin GL_QUADS
glVertex2i 0, 50 '' LINKS UNTEN (1. Koordinate)
glVertex2i 50, 50 '' RECHTS UNTEN (2. Koordinate)
glVertex2i 50, 0 '' RECHTS OBEN (3. Koordinate)
glVertex2i 0, 0 '' LINKS OBEN (4. Koordinate)
glEnd
glLoadIdentity
glTranslatef 150,150,2
glColor3ub 0, 255, 0
glBegin GL_QUADS
glVertex2i 0, 50 '' LINKS UNTEN (1. Koordinate)
glVertex2i 50, 50 '' RECHTS UNTEN (2. Koordinate)
glVertex2i 50, 0 '' RECHTS OBEN (3. Koordinate)
glVertex2i 0, 0 '' LINKS OBEN (4. Koordinate)
glEnd
glLoadIdentity
glTranslatef 175,175,3
glColor3ub 127, 127, 0
glBegin GL_QUADS
glVertex2i 0, 50 '' LINKS UNTEN (1. Koordinate)
glVertex2i 50, 50 '' RECHTS UNTEN (2. Koordinate)
glVertex2i 50, 0 '' RECHTS OBEN (3. Koordinate)
glVertex2i 0, 0 '' LINKS OBEN (4. Koordinate)
glEnd
glLoadIdentity
glFlush
flip
screensync
loop until multikey(&h01) ' Verlasse die Schleife sobald Escape gedrückt wird
|
hinten nach vorne:
blau, rot, grün, oliv
hoffe, es hilft
Eastler _________________ Kaum macht mans richtig, schon geht's |
|
Nach oben |
|
|
noop
Anmeldungsdatum: 04.05.2005 Beiträge: 259
|
Verfasst am: 24.08.2006, 06:52 Titel: |
|
|
Mist!
Bei mir ist es genau andersrum.
Ich kann es nur ändern wenn ich die Reihenfolge der Objekte im Code änder... |
|
Nach oben |
|
|
noop
Anmeldungsdatum: 04.05.2005 Beiträge: 259
|
Verfasst am: 24.08.2006, 12:03 Titel: |
|
|
Funzt jetzt.
Ich musste nur ein Treiberupdate machen.
Die GraKa wurde von meinem Gastvater das letzte mal anfang 2004 geupdated
mfg noop |
|
Nach oben |
|
|
Stormy
Anmeldungsdatum: 10.09.2004 Beiträge: 567 Wohnort: Sachsen - wo die schönen Frauen wachsen ;)
|
Verfasst am: 24.08.2006, 19:24 Titel: |
|
|
noop hat Folgendes geschrieben: |
Funzt jetzt.
Ich musste nur ein Treiberupdate machen.
Die GraKa wurde von meinem Gastvater das letzte mal anfang 2004 geupdated
mfg noop |
Hallo. Danke für die Rückmeldung! Ich hätte mich übrigens auch gewundert, wenn es anderes gewesen wäre. Denn der Code stimmt ja und daher musste die Grafikkarte bzw deren Treiber ja die einzige Ursache sein. _________________ +++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial |
|
Nach oben |
|
|
darkinsanity aka sts
Anmeldungsdatum: 01.11.2006 Beiträge: 456
|
Verfasst am: 08.11.2006, 19:33 Titel: |
|
|
wo kriegt man denn dieses Tutorial her??? |
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 08.11.2006, 20:02 Titel: |
|
|
Hey.
noop hatte gepostet, dass das Tut von Stormy ist. Und Stormy hatte kurz über dir geantwortet...*klick*.
Der Link ist in seiner Signatur...
Grüßle
Mao _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
hundert
Anmeldungsdatum: 06.11.2006 Beiträge: 2
|
Verfasst am: 08.11.2006, 20:54 Titel: |
|
|
Unter "Projektvorstellungen" habe ich ein interessante erweiterbare Spielerei mit Opengl. |
|
Nach oben |
|
|
Lutz Ifer Grillmeister
Anmeldungsdatum: 23.09.2005 Beiträge: 555
|
Verfasst am: 10.11.2006, 19:25 Titel: |
|
|
das ich nicht lache, hundert. siehe meinen antwortpost.
Lutz Ifer _________________ Wahnsinn ist nur die Antwort einer gesunden Psyche auf eine kranke Gesellschaft. |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|