Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[OpenGL, WinAPI, C++] OpenGL i WinAPI w jednym programie z dwoma oknami

Ostatnio zmodyfikowano 2015-08-10 14:47
Autor Wiadomość
Cansisti
Temat założony przez niniejszego użytkownika
[OpenGL, WinAPI, C++] OpenGL i WinAPI w jednym programie z dwoma oknami
» 2015-08-09 19:32:38
Witam
Od jakiegoś czasu uczę się biblioteki OpenGL z OpenGL Księga Experta 5 (SuperBible)
Bibliotekę WinAPI w dużym stopniu znam z kursu cpp0x.
Chciałbym tych dwóch bibliotek użyć w jednym programie tak, żeby za pomocą kontrolek z WinAPI wpływać na obraz renderowany przez OpenGL (np. włącz/wyłącz wielopróbkowanie).
Mój problem polega na tym że obie biblioteki chciałyby mieć własne okna, i jak to pogodzić?
Konkretnie: Jak utworzyć dwa okna, jedno w którym renderuje OpenGL i drugie z WinAPI?
Ważne: używam (jak uczą w SuperBible) biblioteki pomocniczej freeglut - i raczej chcę ją używać :) .
P-135932
Kaikso
» 2015-08-09 19:45:05
OpenGL nie potrzebuje własnego okna tylko jego kontekst który możesz utworzyć z biblioteką GLUT (X11, WinAPI), GLX (X11), czy WGL (WinAPI).

Opis WGL (WinAPI z OpenGL) na oficjalnej stronie
https://www.opengl.org/wiki​/Creating_an_OpenGL_Context_(WGL)
P-135936
Cansisti
Temat założony przez niniejszego użytkownika
» 2015-08-09 19:47:48
A w kontekście utworzonym w ten sposób będę mógł używać freeglut? (np. glutmainloop() )
P-135937
Kaikso
» 2015-08-09 19:50:24
Nie możesz używać jednej z tych bibliotek. Albo WGL albo GLUT (również FreeGLUT).

Biblioteka GLUT to tak naprawdę nakładka na biblioteki WGL i GLX.
P-135938
Cansisti
Temat założony przez niniejszego użytkownika
» 2015-08-09 19:53:04
A możesz polecić jakiś inny sposób na utworzenie drugiego okna i w nim jakiś kontrolek tak żeby było to zgodne z GLUT?
P-135939
Kaikso
» 2015-08-09 19:56:17
A po co chcesz drugie okno? GLUT daje ci możliwość tylko renderowania, a WinAPI daje ci to i jeszcze więcej.

Jak chcesz żeby twój program był przenośny to użyj GTK+-3 i kontrolki GtkGLArea.
P-135941
Cansisti
Temat założony przez niniejszego użytkownika
» 2015-08-09 20:01:48
Nie musi być przenośny (wystarczy windows)
Drugie okno mi potrzebne żeby wyrenderowany obraz był w jednym a kontrolki w drugim :)
P-135942
Kaikso
» 2015-08-09 20:05:54
A nie lepiej wszystko w jednym oknie ?

Spróbuj utworzyć jedno okno z WinAPI, a drugie okno GLUT w nowym wątku. Nie wiem czy to zadziała, to głupi pomysł na programowanie ale warto poeksperymentować dla samej nauki.
P-135944
« 1 » 2
  Strona 1 z 2 Następna strona