Instalacja OpenGL w Code::Blocks – skąd pobrać biblioteki?

0

Chcę zainstalować opengl w code block, i mam problem już na samym początku.
Skąd w ogóle pobrać odpowiednie pliki?
Próbowałem stąd:

https://www.opengl.org/resources/libraries/glut/glut_downloads.php
http://glew.sourceforge.net/

Ale ale nie ma w nich tego czego szukam, czyli:

Z góry dziękuje za pomoc.

0

Podobno szukasz OpenGL, a linki podałeś do GLUT i GLEW, które wcale nie są konieczne.

Pytanie więc, czego właściwie szukasz… (filmika oglądać nie chcę, za długi)

Jeśli chodzi o sam OpenGL, pod Windowsem nagłówek do OpenGL 1.1 (gl.h) powinien już być razem z kompilatorem, w pakiecie z nagłówkami WinAPI. Nagłówki uzupełniające do najnowszej wersji (aktualnie 4.6) glext.h i wglext.h znajdziesz tutaj:
https://www.khronos.org/registry/OpenGL/index_gl.php

Alternatywnie masz tam glcorearb.h zawierający sam core profile.

0

Chcę, żeby, np. taki program mi zadziałał:

#include <GL/glut.h>
#include <stdlib.h>

// funkcja generująca scenę 3D

void Display()
{
    // kolor tła - zawartość bufora koloru
    glClearColor( 1.0, 1.0, 1.0, 1.0 );
    
    // czyszczenie bufora koloru
    glClear( GL_COLOR_BUFFER_BIT );
    
    // kolor kwadratu
    glColor3f( 1.0, 0.0, 0.0 );
    
    // początek definicji wielokąta
    glBegin( GL_POLYGON );
    
    // kolejne wierzchołki wielokąta
    glVertex3f( 0.0, 0.0, 0.0 );
    glVertex3f( 0.0, 1.0, 0.0 );
    glVertex3f( 1.0, 1.0, 0.0 );
    glVertex3f( 1.0, 0.0, 0.0 );
    
    // koniec definicji prymitywu
    glEnd();
    
    // skierowanie poleceń do wykonania
    glFlush();
    
    // zamiana buforów koloru
    glutSwapBuffers();
}

// zmiana wielkości okna

void Reshape( int width, int height )
{
    // generowanie sceny 3D
    Display();
}

// stałe do obsługi menu podręcznego

enum
{
    EXIT // wyjście
};

// obsługa menu podręcznego

void Menu( int value )
{
    switch( value )
    {
        // wyjście
    case EXIT:
        exit( 0 );
    }
}

int main( int argc, char * argv[] )
{
    // inicjalizacja biblioteki GLUT
    glutInit( & argc, argv );
    
    // inicjalizacja bufora ramki
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_RGB );
    
    // rozmiary głównego okna programu
    glutInitWindowSize( 400, 400 );
    
    // utworzenie głównego okna programu
    glutCreateWindow( "Kwadrat 1" );
    
    // dołączenie funkcji generującej scenę 3D
    glutDisplayFunc( Display );
    
    // dołączenie funkcji wywoływanej przy zmianie rozmiaru okna
    glutReshapeFunc( Reshape );
    
    // utworzenie menu podręcznego
    glutCreateMenu( Menu );
    
    // dodatnie pozycji do menu podręcznego
    #ifdef WIN32
    
    glutAddMenuEntry( "Wyjście", EXIT );
    #else
    
    glutAddMenuEntry( "Wyjscie", EXIT );
    #endif
    
    // określenie przycisku myszki obsługującej menu podręczne
    glutAttachMenu( GLUT_RIGHT_BUTTON );
    
    // wprowadzenie programu do obsługi pętli komunikatów
    glutMainLoop();
    return 0;
}

Potrzebuje biblioteki OpenGL i glut. Gość na filmiku używa plików o nazwie:

  • freeglut
  • freeglut_ext
  • freeglut_std
  • gl
  • glext
  • glu
  • glut
0

Pobrałem wszystko z tej strony którą mi podałeś i działa.

Wszystko zrobione tak jak w tym filmiku:

plik pobieramy z linku: Martin Payne's Windows binaries (MSVC and MinGW) --> Download freeglut 3.0.0 for MinGW

Pobrany plik freeglut.dll kopiujemy do folderu z plikiem exe naszego projektu.
Pobrane pliki z folderu Include ( freeglut.h, freeglut_std.h, freeglut_ext.h, glut.h), kopiujemy do folderu: CodeBlocks\MinGW\include\GL .
Pobrane pliki z folderu lib (libfreeglut.a, libfreeglut_static.a) kopiujemy do folderu: CodeBlocks\MinGW\lib

W ustawieniach linkera:
project --> build options --> linker setings, w okienku: Other linker options, wpisujemy:

-lopengl32
-lfreeglut
-lglu32

I tyle.

Problem rozwiązany,dzięki za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1