 |
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 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 17.08.2007, 17:24 Titel: [OGL] rotierenden Würfel darstellen... |
|
|
Ich versuche mich z.Z. an einem rotierendem Würfel, dessen Flächen allesam t ein gleichgroßes Quadrat darstellen.
Das ginge doch eigtl. gut mit GL_QUADS - aber leider scheine ich da die Koordinaten vertauscht zu haben. (GL_CULL_FACE muss abgeschaltet sein):
Code: | For Rot As Integer = 1 To 1024
glClear GL_COLOR_BUFFER_BIT OR GL_DEPTH_BUFFER_BIT
glscalef 2, 2, 1
glRotatef Rot, (iResX/2), (iResY/2), 0
glTranslatef 40,40,10
glColor3ub 140,255,0
glBegin GL_QUADS
glVertex3i 10,10, 5
glVertex3i 10,60, 5
glVertex3i 35,85, 5
glVertex3i 35,35, 5
glEnd
glColor3ub 255,0,0
glBegin GL_QUADS
glVertex3i 10, 10, 10
glVertex3i 10, 60, 10
glVertex3i 60, 60, 10
glVertex3i 60, 10, 10
glEnd
glColor3ub 0,0,255
glBegin GL_QUADS
glVertex3i 10, 60, 10
glVertex3i 35, 85, 10
glVertex3i 85, 85, 10
glVertex3i 60, 60, 10
glEnd
glColor3ub 0,255,0
glBegin GL_QUADS
glVertex3i 60,10, 10
glVertex3i 60,60, 10
glVertex3i 85,85, 10
glVertex3i 85,35, 10
glEnd
glLoadIdentity
glFlush
Flip
ScreenSync
Next |
iResX & iResY ist die Bildschirmgröße...
bzw.
Wie geht man mit GL_POLYGON um? Wieviele Parameter braucht das ganze?
Ein Würfel besteht doch grundsätzlich aus 2 Polygonen, oder? _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 17.08.2007, 17:46 Titel: |
|
|
also erstmal die konstante heißt GL_QUADS und nicht GL_QUAD weil man auch mehrere würfel in eine anweisung setzen kann, du musst nich jedes mal glEnd und gleich wieder glBegin machen.
und zu GL_POLYGON:
General Polygons
The final OpenGL primitive is the GL_POLYGON, which you can use to draw a polygon having any number of sides. Figure 3.27 shows a polygon consisting of five vertices. Polygons, like quads, must have all vertices on the same plane. An easy way around this rule is to substitute GL_TRIANGLE_FAN for GL_POLYGON!
ein polygon is einfach nur n Vieleck, sprich du gibst eine ecke an, noch eine, noch eine, noch eine, und dadraus wird dann eine fläche. Die parameter sind sogesehen unendlich viele.
Ein würfel (wie du wissen dürftest) hat sechs seiten die alle vierecke sind, sprich mit sechs GL_QUADS oder alternativ zwei GL_QUADS und einem vierteiligen GL_QUAD_STRIP wenn du daten sparen wilst.bzw was wahrscheinlich auch geht sind zwei GL_TRIANGLE_FANs oder eventuell sogar ein GL_TRIANGLE_STRIP, müsste man mal drüber nachdenken, kann ich dir so nich sagen. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 17.08.2007, 18:00 Titel: |
|
|
das sind alles nur flächen, es gibt keine körper.. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
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.
|
|