Это пошаговая инструкция поможет вам быстро и просто настроить проект для разработки приложений с использованием OpenGL и библиотек GLFW, GLAD и GLM в Visual Studio 2022.
Шаг 1: Установка необходимых библиотек
GLFW
Перейдите на официальный сайт GLFW и скачайте архив с бинарными файлами для Windows. Например, glfw-3.4.bin.WIN64.zip.
Распакуйте архив в удобное место, например:
C:\Users\Vladimir\Libraries\glfw-3.4.bin.WIN64
GLAD
Вместо GLEW будем использовать современный и удобный загрузчик OpenGL-функций GLAD:
- Откройте онлайн-генератор GLAD по ссылке: https://glad.dav1d.de.
- Выберите следующие настройки:
- Language:
C/C++
- Specification:
OpenGL
- API:
gl
версии3.3
- Profile:
Core
- Generate a loader: поставьте галочку
- Language:
- Нажмите кнопку Generate и скачайте полученный zip-архив.
Распакуйте содержимое архива в вашу папку с библиотеками:
C:\Users\Vladimir\Libraries\glad
GLM
Библиотеку GLM для математических операций скачайте с GitHub: glm-1.0.1-light.7z.
Распакуйте её в ту же папку:
C:\Users\Vladimir\Libraries\glm
Шаг 2: Создание проекта в Visual Studio 2022
Запустите Visual Studio и создайте новый пустой C++ проект:
Create a new project → C++ Empty Project
Назовите его, например, OpenGLProject
.
Шаг 3: Настройка свойств проекта
Откройте настройки проекта (Project → Properties
) и убедитесь, что выбрана конфигурация для всех типов сборок (Configuration: All Configurations
).
Include Directories
В Configuration Properties → VC++ Directories → Include Directories
добавьте пути:
C:\Users\Vladimir\Libraries\glfw-3.4.bin.WIN64\include;
C:\Users\Vladimir\Libraries\glad\include;
C:\Users\Vladimir\Libraries\glm;
$(IncludePath)
Library Directories
В Library Directories
добавьте путь:
C:\Users\Vladimir\Libraries\glfw-3.4.bin.WIN64\lib-vc2022;
$(LibraryPath)
Linker → Input
В Configuration Properties → Linker → Input → Additional Dependencies
добавьте:
glfw3.lib;opengl32.lib;%(AdditionalDependencies)
Теперь библиотека GLFW будет использовать статическую линковку, и файл glfw3.dll
вам не понадобится.
Шаг 4: Добавление GLAD в проект
Добавьте исходный файл GLAD (glad.c
) непосредственно в ваш проект:
Source Files → Add → Existing Item...
C:\Users\Vladimir\Libraries\glad\src\glad.c
Шаг 5: Пример минимального кода
Создайте файл main.cpp
:
#include <iostream>
#include <glad/glad.h>
#include <GLFW/glfw3.h>
int main()
{
if (!glfwInit())
{
std::cerr << "Failed to initialize GLFW\n";
return -1;
}
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
GLFWwindow* window = glfwCreateWindow(800, 600, "OpenGL Window", nullptr, nullptr);
if (!window)
{
std::cerr << "Failed to create GLFW window\n";
glfwTerminate();
return -1;
}
glfwMakeContextCurrent(window);
if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
{
std::cerr << "Failed to initialize GLAD\n";
glfwTerminate();
return -1;
}
std::cout << "OpenGL version: " << glGetString(GL_VERSION) << std::endl;
while (!glfwWindowShouldClose(window))
{
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
glfwSetWindowShouldClose(window, GLFW_TRUE);
glClearColor(0.1f, 0.2f, 0.3f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT);
glfwSwapBuffers(window);
glfwPollEvents();
}
glfwDestroyWindow(window);
glfwTerminate();
return 0;
}
Шаг 6: Сборка и запуск
Соберите проект:
Build → Build Solution (Ctrl+Shift+B)
Запустите проект:
Debug → Start Without Debugging (Ctrl+F5)
Если всё сделано правильно, вы увидите окно с установленным вами цветом.