[Nowoczesny OpenGL] Konfiguracja OpenGL GLFW GLAD z GLM oraz Assimp
Ostatnio zmodyfikowano 2025-02-17 15:32
tBane Temat założony przez niniejszego użytkownika |
[Nowoczesny OpenGL] Konfiguracja OpenGL GLFW GLAD z GLM oraz Assimp » 2025-02-17 15:32:54 OpenGL (Open Graphics Library) to popularne, wieloplatformowe API służące do renderowania grafiki 2D i 3D. Jest to zestaw funkcji, które pozwalają programistom komunikować się bezpośrednio z kartą graficzną i renderować grafikę w czasie rzeczywistym. OpenGL działa na poziomie niskopoziomowym i zapewnia ogromną elastyczność w tworzeniu zaawansowanych efektów graficznych. GLFWJednak OpenGL sam w sobie nie obsługuje okienek ani urządzeń wejściowych (myszka, klawiatura, joystick). Dlatego właśnie GLFW jest używany jako uzupełnienie. GLADOpenGL sam w sobie nie zapewnia mechanizmu do uzyskiwania dostępu do nowoczesnych funkcji, ponieważ jego implementacja zależy od sterowników karty graficznej. Aby używać funkcji takich jak glCreateShader(), glBindVertexArray() czy glUseProgram(), musimy załadować ich wskaźniki. Możemy to zrobić ręcznie, ale to skomplikowane i czasochłonne. GLAD automatyzuje ten proces. GLMDostarcza wbudowanej obsługi matematyki 3D – wymaga macierzy transformacji, obrotów, rzutowania itp.. GLM pozwala łatwo operować na wektorach i macierzach w sposób podobny do GLSL. AssimpW OpenGL nie ma wbudowanej obsługi modeli 3D – musimy ręcznie wczytywać pliki, dekodować ich strukturę i konwertować na siatki (mesh). Assimp automatyzuje ten proces. PlikiGLFW - https://www.glfw.org/GLAD - https://glad.dav1d.deGLM - https://github.com/g-truc/glmAssimp - https://github.com/assimp/assimpKonfiguracjaUdało mi się skonfigurować projekt OpenGL w taki sposób, że obsługuję nowoczesny OpenGL czyli korzysta z bibliotek GLFW, GLAD, GLM oraz Assimp. 1. Przygotowujemy folder z plikami OpenGL (glfw-3.4) oraz folder z plikami GLAD i folder z plikami glm, a także folder z plikami assimp
2. Należy wypakować pliki assimp do nowo utworzonego folderu assimp na dysku C - C:/assimp/tu pliki
3. Należy za pomocą cmake zbudować projekt assimp w folderze C:/assimp/build, aby to zrobić wybieramy cmake. W polu "Where is the source code:" wpisujemy "C:/assimp/assimp-5.4.3" a w polu "Where to build the binaries:" wpisujemy "C:/assimp/build" następnie na dole wybieramy "Configure" a gdy się skonfiguruje to klikamy "generate". Po generacji projektu uruchamiamy go poprzez kliknięcie "Open Project"
4. Teraz należy zbudować bibliotekę assimp. W Projekcie wybieramy "assimp" i prawy przycisk myszy - zbuduj. Powinno wygenerować to nam plik biblioteki "assimp-vc143-mtd.lib" w folderze "C:\assimp\build\lib\Debug"
5. Tworzymy pusty projekt w Visual Studio
6. Do pustego projektu dodajemy plik main.cpp korzystając z skrótu klawiszowego ctrl + shift + a
7. Następnie przechodzimy do właściwości projektu
8. Ustawiamy właściwości projektu:
a) Wszystkie Konfiguracje (32 bits):
- C/C++ -> General -> Additional Include Directiories: C:\assimp\assimp-5.4.3\include;C:\assimp\build\include;C:\glm;C:\glad\include;C:\glfw-3.4.bin.WIN64\include;%(AdditionalIncludeDirectories)
- Linker -> General -> Additional Library Directories: C:\assimp\build\lib\Debug;C:\glfw-3.4.bin.WIN64\lib-vc2022;%(AdditionalLibraryDirectories)
- Linker -> Input -> Additional Dependencies (dodać wszystkie z enterami): assimp-vc143-mtd.lib; glfw3.lib; opengl32.lib; user32.lib; gdi32.lib; shell32.lib; %(AdditionalDependencies)
-Linker -> Input -> Additional Dependencies
9. Do projektu dodajemy pliki glad (najlepiej skopiować cały folder do folderu projektu i wszystkie pliki z folderu dodać do projektu) -Project->Right click->Add->Existing Item->"Files from glad folder"
10. Do projektu tam gdzie jest binarny exe projektu dodajemy plik biblioteki wygenerowanej przez cmake "assimp-vc143-mtd.lib"
|
|
« 1 » |