/
Amirka04
/
GameTest
Обзор
Документация
Войти
/
Amirka04
/
GameTest
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
Engine/core/Window/window.cpp
79 строк
2 KB
Amirka04
Добавление вывода сообщение об освобождении памяти
25 мар 2024, 00:00
25 мар 2024, 00:00
1f356db
Код
Авторство
О чём код?
// SPDX-FileCopyrightText: 2024 Amir kokovamir6@gmail.com // SPDX-License-Identifier: Apache-2.0 // std lib C++ #include <iostream> // header file window #include "window.h" GLFWwindow* window::win = nullptr; bool window::initialization(const std::string& title, int w, int h) { // Инициализация glfw if(!glfwInit()) { finallyzation(); return false; } // создание окна glfw win = glfwCreateWindow(w, h, title.c_str(), nullptr, nullptr); if(win == nullptr) { finallyzation(); return false; } // create context glfwMakeContextCurrent(win); // инициализация glad if(!gladLoadGL()) return false; // opengl settings // glEnable(GL_DEPTH_TEST); // если ничего не завершилось ошибкой, то всё должно работать return true; } // Очистка и заливка цветом void window::clear(const glm::vec4 &color) { glClearColor(color.r, color.g, color.b, color.a); glClear( GL_COLOR_BUFFER_BIT ); } // Установка закрытия окна, понадобиться для закрытия окна клавишой или события void window::setShouldCloseWindow(bool flag) { glfwSetWindowShouldClose(win, flag); finallyzation(); exit(0); } // двойная буфферизация void window::swapBuffers() { glfwSwapBuffers(win); } // проверка на закрытия окна bool window::isShouldCloseWindow() { return glfwWindowShouldClose(win); } // очищение всех ресурсов glfw3 void window::finallyzation() { std::cout << "Очистка системы окна..." << std::endl; glfwTerminate(); }