HDC hdc;
HGLRC hRC;
switch (message)
{
case WM_CREATE:
hRC = wglCreateContext(hdc);
if (!hRC)
{
MessageBox(NULL, "Cannot create context.", "Error", MB_OK);
return FALSE;
}
wglMakeCurrent(hdc, hRC);
break;
case WM_PAINT:
...
...
...
}
проблемы при создании контекста устройства
Значит проблема заключается в следующем: Создаю Win32 App, в обработчике сообщений при получении сообщения WM_CREATE создаю контекст устройства OpenGL, но вот создаваться он ни в какую не хочет. Что делать подскажите плз!!!
Может оно еще и ошибки выдает?
Ага, выводит MessageBox - "Cannot create context." :-) А вот причины отсутствуют... Соответственно, если в "новый" контекст (который не получилось создать) попытаться что-либо вывести сразу покрывает матом!
Цитата:
wglCreateContext
The wglCreateContext function creates a new OpenGL rendering context, which is suitable for drawing on the device referenced by hdc. The rendering context has the same pixel format as the device context.
HGLRC wglCreateContext(
HDC hdc // device context of device that the rendering context
// will be suitable for
);
Parameters
hdc
Handle to a device context for which the function creates a suitable OpenGL rendering context.
Return Values
If the function succeeds, the return value is a valid handle to an OpenGL rendering context.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Читать умееш?
Код:
int argc = 0;
char *argv = "";
glutInit(&argc, &argv);
glutInitWindowSize(250, 250);
glutInitWindowPosition(100, 100);
init();
glutDisplayFunc(display);
glutMainLoop();
char *argv = "";
glutInit(&argc, &argv);
glutInitWindowSize(250, 250);
glutInitWindowPosition(100, 100);
init();
glutDisplayFunc(display);
glutMainLoop();
Как получить код ошибки - непонятно, т.к. функции типа void...