różnica freeglut vs glew?

Ostatnio zacząłem uczyć się OpenGL (>3.3) i zauważyłem, że wiele przykładów i samouczków używa zarówno freeglut, jak i glew, ale tak naprawdę nie wyjaśniaj różnicy. Najlepszym opisem, jaki znalazłem, po googlowaniu i czytaniu ad nauseum, było to związane z OpenGL Zestawy narzędzi i API, ale okazało się, że brakuje. Przeczytałem nawet informacje o tagach NA SO.

Jako ktoś naprawdę nowy w OpenGL nadal staram się zrozumieć różne koncepcje. Doszedłem do etapu tworzenie podstawowego programu używającego glew, tworzenie kontekstu (w windows, VS2010), & rysowanie naprawdę podstawowych kształtów, wszystko bez potrzeby jawnego włączania freeglut. Więc nie rozumiem, po co mi to.

Więc moje pytanie brzmi, jaka jest różnica między:
- freeglut
~ glew
- (&glfw)
Co można zrobić , że drugi nie Może ?

Author: genpfault, 2013-03-25

2 answers

Rozszerzenie OpenGL Wrangler (GLEW) jest używany do dostępu do nowoczesnych funkcji API OpenGL (od wersji 3.2 do najnowszej wersji).Jeśli użyjemy starożytnej wersji OpenGL, możemy uzyskać dostęp do funkcji OpenGL po prostu jako #include <GL/gl.h>.Jednak we współczesnym OpenGL funkcje API są określane w czasie wykonywania, a nie w czasie kompilacji. GLEW zajmie się ładowaniem czasu pracy API OpenGL.O GLEW Zobacz tutaj

GLFW lub freeglut pozwoli nam stworzyć okno, i odbierać wejście myszy i klawiatury w sposób wieloplatformowy. OpenGL nie zajmuje się tworzeniem i wprowadzaniem okien, więc musimy użyć tych bibliotek do obsługi okien, klawiatury, myszy, joysticków, wprowadzania i innych celów.

GLFW i freeglut są dla nas alternatywą w zależności od naszych potrzeb możemy wybrać dowolny, ale GLEW różni się od nich, który jest używany do ładowania czasu pracy API OpenGL.

 45
Author: Dinesh Subedi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 10:31:09

Używam ich obu do pracy na mojej uczelni.

GLEW jest "wieloplatformową biblioteką ładowania rozszerzeń C/C++" (ze strony internetowej), podczas gdy freeglut jest menedżerem okien, który zastępuje domyślną bibliotekę OpenGL Utility Toolkit (GLUT).

Więc, jak widzisz, oba różne mają różne cele. Celem korzystania z freeglut jest to, że jest on nadal utrzymywany, podczas gdy domyślny GLUT nie jest, więc jeśli chcesz poprawek błędów i nowych funkcji powinieneś użyć it:)

 1
Author: mrcasals,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-25 11:50:10