OpenGL und SDL



  • Hi,

    ich versuche grade OpenGL über die SDL zu initialisieren. Soweit klappt das glaub ich auch ganz gut.

    Hab mir dazu auch Tutorials rausgesucht nur leider funktionieren die Methoden nicht 😕

    mein Compiler meckert bei allen aufrufen in dieser Form:

    glClearColor(); etc.

    Hier einfach mal der QuellCode:

    #include "SDL.h"
    #include "SDL_opengl.h"
    
    #include <iostream>
    
    using namespace std;
    
    #define TRUE 1
    #define FALSE 0
    
    void Init_OpenGL()
    {
        SDL_GL_SetAttribute (SDL_GL_DOUBLEBUFFER, 1);
        glClearColor (0.0f, 0.0f, 0.0f, 0.0f);
        glShadeModel(GL_SMOOTH);
    }
    void Render();
    
    int main (int argc, char **argv)
    {
        SDL_Event event;
        int done = FALSE;
    
        SDL_SetVideoMode (800, 600, 32, SDL_OPENGL);
    
        Init_OpenGL();
    
        while (!done)
        {
            SDL_PollEvent(&event);
    
            if (event.type == SDL_QUIT || event.key.keysym.sym == SDLK_ESCAPE)
                done = TRUE;
    
            Render();
        }
    
        SDL_Quit();
        return 0;
    }
    
    // Init_OpenGL und Render()
    
    void Render()
    {
        glClear(GL_COLOR_BUFFER_BIT);
    
        glBegin(GL_TRIANGLES);
        glColor3f (0.0f, 0.0f, 1.0f);
        glVertex3f (0.0f, 0.5f, 0.0f);
        glColor3f (1.0f, 0.0f, 0.0f);
        glVertex3f (0.5f, -0.5f, 0.0f);
        glColor3f (0.0f, 1.0f, 0.0f);
        glVertex3f (-0.5f, -0.5f, 0.0f);
        glEnd();
    
        SDL_GL_SwapBuffers();
    }
    

    Oder hab ich einfach nur einen Header o.ä. vergessen? Antworten wären super 🙂

    -> Ich benutze übrigens die IDE Code::Blocks 10.02 unter Windows....falls das weiterhelfen sollte^^



  • Problem gelöst. Hab nachm bisl rummprobieren doch noch die richtige lib gefunden xD

    Unter Project -> Build Options / Linker Settings muss noch die opengl32 eingetragen werden.

    Zumindest läuft es jetzt bei mir.


Anmelden zum Antworten