Bu yazıdaki adımları uygulamadan önce CodeBlocks'a GLFW Kütüphanesini Ekleme sayfasındaki işlemleri yapmış olmanız gerekir.
GLAD kütüphanesini indirmek için şu bağlantıya gidilir. Açılan sayfada ayarlar aşağıdaki resimde olduğu gibi yapılır. Ekran kartınız hangi OpenGL sürümünü destekliyorsa o sürüm değerini seçin.Ayarlar yukarıdaki gibi yapıldıktan sonra Generate butonuna tıklanır. Sonrasında açılan sayfada glad.zip isimli dosya bilgisayara indirilir. Önceki yazıda oluşturduğumuz projeye bu kütüphaneyi eklemeye başlayabiliriz.
glad.zip dosyasında src ve include adında iki tane klasör bulunmaktadır. include klasörü içinde yer alan glad ve KHR adlı klasörleri kopyalayıp, önceden oluşturduğumuz proje dizininde yer alan include klasörü içine yapıştırın. glad.zip dosyasında yer alan src klasörü içindeki glad.c adlı dosyayı kopyalayın ve proje dizini içinde yer main.cpp dosyasının yanına yapıştırın. Yukarıdaki işlemler sonucunda proje dizini şu şekillerde olmalı.
Proje içindeki include klasörünü daha öncesinde bildirdiğimiz için bu glad ve KHR klasörleri direkt eklenmiş oldu. Ancak glad.c dosyası için yapmamız gereken bir işlem daha var. CodeBlocks uygulama ekranı açılır. Sol panelde yer alan proje ismine sağ tıklanır ve "Add Files..." seçilir. Açılan pencereden glad.c adlı dosya seçilip, açılır ve açılan Multiple selection ekranında Ok butonuna tıklanır. Artık CodeBlocks proje dizininde de glad.c dosyası görünür hale gelmiştir. Şimdi sıra örnek bir kod çalıştırmaya geldi. Aşağıdaki kodu kopyalayın ve main.cpp dosyasına yapıştırın:
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>
void framebuffer_size_callback(GLFWwindow* window, int width, int height);
void processInput(GLFWwindow *window);
int main()
{
glfwInit();
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
GLFWwindow* window = glfwCreateWindow(640, 480, "OpenGL Tutorial", NULL, NULL);
if (window == NULL)
{
std::cout << "Failed to create GLFW window" << std::endl;
glfwTerminate();
return -1;
}
glfwMakeContextCurrent(window);
glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);
if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
{
std::cout << "Failed to initialize GLAD" << std::endl;
return -1;
}
while (!glfwWindowShouldClose(window))
{
processInput(window);
glClearColor(1.0f, 0.0f, 0.0f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT);
glfwSwapBuffers(window);
glfwPollEvents();
}
glfwTerminate();
return 0;
}
void processInput(GLFWwindow *window)
{
if(glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
glfwSetWindowShouldClose(window, true);
}
void framebuffer_size_callback(GLFWwindow* window, int width, int height)
{
glViewport(0, 0, width, height);
}
Sonrasında projeyi build edip, çalıştırın. Aşağıdaki gibi kırmızı renkli bir pencere karşımıza çıktıysa ve herhangi bir hata almadıysak GLAD kütüphanesini ekleme işlemini başarılı bir şekilde gerçekleştirmişiz demektir. 👍
Hiç yorum yok:
Yorum Gönder