學習教的是glut和glew,所以我準備同時跟著learnopengl學glfw和glad。
glfw初始化
建立視窗
glad初始化
渲染迴圈(輸入控制也放入這個迴圈中)
建立乙個函式,隨著視窗大小改變視口也跟著改變
銷毀視窗
#include #include #include void framebuffer_size_callback(glfwwindow* window, int width, int height);
void processinput(glfwwindow *window);
// settings
const unsigned int scr_width = 800;
const unsigned int scr_height = 600;
int main()
glfwmakecontextcurrent(window);
glfwsetframebuffersizecallback(window, framebuffer_size_callback);
// glad初始化,因為glad控制opengl指標。所以在呼叫opengl函式前先初始化glad
if (!gladloadglloader((gladloadproc)glfwgetprocaddress))
//渲染迴圈
while (!glfwwindowshouldclose(window)) //glfwwindowshouldclose函式在我們每次迴圈的開始前檢查一次glfw是否被要求退出,如果是的話該函式返回true然後渲染迴圈便結束了
//銷毀視窗
glfwterminate();
return 0;
}//輸入控制
void processinput(glfwwindow *window)
//隨著視窗改變檢視也會跟著改變
void framebuffer_size_callback(glfwwindow* window, int width, int height)
opengl 教程 1 建立視窗
本章教程內容主要來自 opengl做為3d圖形介面,本身並不提供任何視窗管理功能,在不同作業系統中,通常都有相關庫做為opengl和os的介面,來實現視窗管理,比如xwindows系統中的glx,windows系統中的wgl,mac os中的cgl等等。在下面的一系列教程中,我們使用glut,這是乙...
OpenGL入門 1 建立視窗初始化
opengl中,建立視窗最重要的是載入glfw和glad兩個語言庫,也是每個opengl主程式中最重要最開始的部分。glfw是乙個專門針對opengl的c語言庫,它提供了一些渲染物體所需的最低限度的介面。它允許使用者建立opengl上下文,定義視窗引數以及處理使用者輸入。glad是用來管理openg...
OpenGL(一) 簡介 建立視窗
opengl規範嚴格規定了每個函式該如何執行,以及它們的輸出值。至於內部具體每個函式是如何實現 implement 的,將由opengl庫的開發者自行決定 譯註 這裡開發者是指編寫opengl庫的人 因為opengl規範並沒有規定實現的細節,具體的opengl庫允許使用不同的實現,只要其功能和結果與...