---
title: "OpenGL problem!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/c-cpp/58239-opengl-problem"
topic: "C/C++"
topic_url: "https://www.webforum.nu/amne/c-cpp"
author: "puhbjörn"
published: "2002-11-06T15:50:51.000Z"
updated: "2002-11-09T13:22:25.000Z"
replies: 7
views: 297
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/c-cpp/58239-opengl-problem"
---

# OpenGL problem!

## #1 — puhbjörn, 2002-11-06T15:50Z

Jag håller på med lite Open GL programmering i C++ och har råkat ut för ett problem när jag ska göra en roterande 3d pyramid. Problemet är att när jag kompilerat programmet och ska kolla hur det ser ut så blir det ingen pyramid. Så här ser koden ut: 

glBegin(GL_TRIANGLES); // Start Drawing The Pyramid 

glColor3f(1.0f,0.0f,0.0f); // Red 
glVertex3f( 0.0f, 1.0f, 0.0f); // Top Of Triangle (Front) 
glColor3f(0.0f,1.0f,0.0f); // Green 
glVertex3f(-1.0f,-1.0f, 1.0f); // Left Of Triangle (Front) 
glColor3f(0.0f,0.0f,1.0f); // Blue 
glVertex3f( 1.0f,-1.0f, 1.0f); // Right Of Triangle (Front) 

glColor3f(1.0f,0.0f,0.0f); // Red 
glVertex3f( 0.0f, 1.0f, 0.0f); // Top Of Triangle (Right) 
glColor3f(0.0f,0.0f,1.0f); // Blue 
glVertex3f( 1.0f,-1.0f, 1.0f); // Left Of Triangle (Right) 
glColor3f(0.0f,1.0f,0.0f); // Green 
glVertex3f( 1.0f,-1.0f, -1.0f); // Right Of Triangle (Right) 

glColor3f(1.0f,0.0f,0.0f); // Red 
glVertex3f( 0.0f, 1.0f, 0.0f); // Top Of Triangle (Back) 
glColor3f(0.0f,1.0f,0.0f); // Green 
glVertex3f( 1.0f,-1.0f, -1.0f); // Left Of Triangle (Back) 
glColor3f(0.0f,0.0f,1.0f); // Blue 
glVertex3f(-1.0f,-1.0f, -1.0f); // Right Of Triangle (Back) 

glColor3f(1.0f,0.0f,0.0f); // Red 
glVertex3f( 0.0f, 1.0f, 0.0f); // Top Of Triangle (Left) 
glColor3f(0.0f,0.0f,1.0f); // Blue 
glVertex3f(-1.0f,-1.0f,-1.0f); // Left Of Triangle (Left) 
glColor3f(0.0f,1.0f,0.0f); // Green 
glVertex3f(-1.0f,-1.0f, 1.0f); // Right Of Triangle (Left) 
glEnd(); 

Någon som vet vad som är fel ? 

Här finns programmet: <http://www.websamba.com/plutt/files/spel.exe>

Permalänk: https://www.webforum.nu/p/58239

## #2 — Alpha II, 2002-11-06T18:08Z

Vart ritar du den?

testa med 
glTranslatef(0.0f, 0.0f, -10.0f);
innan glBegin() så att du inte ritar den bakom "ögats" position!

Permalänk: https://www.webforum.nu/p/845976

## #3 — puhbjörn, 2002-11-07T09:59Z

När jag gjort så ser jag ingenting.

Permalänk: https://www.webforum.nu/p/846487

## #4 — Alpha II, 2002-11-08T14:42Z

Kan du visa all kod? Det kan ju vara så att det är fel någon annastans! Eller är det nehe koden?

Permalänk: https://www.webforum.nu/p/847416

## #5 — Alpha II, 2002-11-08T14:48Z

Funkar det om du bara ritar en quad?
testa med den här koden i rita funktionen, fugerar inte det är det någonting som är fel med den övriga koden!

```
void DrawScene()
{
  glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  glLoadIdentity();

  glTranslatef(0.0f, 0.0f, -10.0f);

  glColor3f(1.0f, 0.0f, 0.0f);
  glBegin(GL_QUADS);
    glVertex3f( 2.0f, -2.0f, 0.0f);
    glVertex3f(-2.0f, -2.0f, 0.0f);
    glVertex3f(-2.0f,  2.0f, 0.0f);
    glVertex3f( 2.0f,  2.0f, 0.0f);
  glEnd();
}
```

Permalänk: https://www.webforum.nu/p/847418

## #6 — Phorpher, 2002-11-08T17:40Z

Kör en glFlush(); efter glEnd(); också, så tvingar du openGL att rita ut. Så det inte ligger kvar i någon buffer alltså.

Permalänk: https://www.webforum.nu/p/850366

## #7 — puhbjörn, 2002-11-09T13:08Z

Alpha II det blir en fin röd quad som täcker hela ytan om jag använder din kod och tar bort glTranslatef(0.0f, 0.0f, -10.0f);.
Pyramid koden kommer från nehe men resten kommer från någon annan tutorial på gamedev. 

Och sen så är ju inte problemet att det inte syns någonting utan att pyramiden inte får någon botten och att den verkar ha fyra sidor.

Permalänk: https://www.webforum.nu/p/850959

## #8 — Alpha II, 2002-11-09T13:22Z

jaha!
men det beror på att du ritar en pryramid utan botton, eftersom i nehes tutorial syns aldrig botten och den behövs aldrig ritas, det står på sidan!

lägg till för bottnen:

```
glBegin(GL_QUADS);
glVertex3f( 1.0f, -1.0f, -1.0f );
glVertex3f(-1.0f, -1.0f, -1.0f );
glVertex3f(-1.0f, -1.0f,  1.0f );
glVertex3f( 1.0f, -1.0f,  1.0f );
glEnd();
```

Permalänk: https://www.webforum.nu/p/850962

---

Tråden på webben: https://www.webforum.nu/amne/c-cpp/58239-opengl-problem
