C/C++ FAQ

Inicjalizacja trybu(OpenGL)

RobinMaster

Więc zacznij od zdefiniowania sobie dwóch zmiennych

 
HDC hdc;
HGLRC hrc;
 

teraz przypiszmy uchwyt :

 
hdc=GetDC(Handle);
 

następnie

 
PIXELFORMATDESCRIPTOR pfd={
sizeof(PIXELFORMATDESCRIPTOR),1,
PFD_DRAW_TO_WINDOW|PFD_SUPPORT_OPENGL|
PFD_DOUBLEBUFFER,PFD_TYPE_RGBA,
//ustaw 32 bitowy tryb ekranu 
32,
0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,
PFD_MAIN_PLANE,0,0,0
};
 

teraz jeszcze :

 
int indexformat=ChoosePixelFormat(hdc,&pfd);
SetPixelFormat(hdc,indexformat,&pfd);
hrc=wglCreateContext(hdc);
wglMakeCurrent(hdc,hrc);
 

i na końcu działania programu musimy usunąć zmienne:

 
ReleaseDC(Handle,hdc);
wglMakeCurrent(NULL,NULL);
wglDeleteContext(hrc);
 

oczywiście nie można zapomnieć dodać bibliotek open gl czyli :

 
#include <gl/gl.h>
#include <gl/glu.h> 
 

Mam nadzieję , że przyda się ta wskazówka dla każdej osoby , która będzie chciała zacząć przygodę z OpenGL :D

FAQ

7 komentarzy

Witam po 13 latach : O

Ja ze swojej strony do OpenGL polecam stronke: http://nehe.gamedev.net/
O samym OpenGL dla początkujących i nie tylko nic lepszego i darmowego raczej nie znajdziecie.

Nie ma to jak szczegółowe wytłumaczenie...

chyba w kazdym kompilatorze c++/c mozna wybrac projekt graficzny w ktorym to juz zostanie stworzona przykladowa klasa okna idla opengl z komentarzami z ktorych mozna wicej sie dowiedziec niz z tego "artykulu" :)

Wlasnie najlepiej zrypac z kogos opisu ,samemu niczego o tym nie wiedząc :)

jak będę miał czas to poprawie :D

Oooo, tak. Świetny artykuł. Szkoda tylko, że nie bardzo wiadomo co tu zostało napisane? :-o
Troszkę wiecej komentarzy dlaczego własnie tak.