创建OpenGL窗口
配置OpenGL项目,引入glad、glfw
# CMakeList.txt: MMOpenGL 的 CMake 项目,在此处包括源代码并定义
# 项目特定的逻辑。
#
cmake_minimum_required (VERSION 3.8)
include_directories(../lib/GLFW/include/)
include_directories(../lib/glad/include/)
link_directories(../lib/GLFW/lib/)
# 将源代码添加到此项目的可执行文件。
add_executable (
MMOpenGL
"MMOpenGL.cpp"
"MMOpenGL.h"
../lib/glad/src/glad.c
)
target_link_libraries(MMOpenGL glfw3)
# TODO: 如有需要,请添加测试并安装目标。
创建基础窗口
// MMOpenGL.cpp: 定义应用程序的入口点。
//
#include "MMOpenGL.h"
#include <glad/glad.h>
#include <GLFW/glfw3.h>
using namespace std;
int main()
{
glfwInit();
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
// Core Profile
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
int windowWidth = 1280;
int windowHeigh = 720;
GLFWwindow * window = glfwCreateWindow(windowWidth, windowHeigh,"MMOpenGL",NULL,NULL);
//OpenGL单线程,多个线程同时调用不被允许
glfwMakeContextCurrent(window);
gladLoadGLLoader((GLADloadproc)glfwGetProcAddress);
while (!glfwWindowShouldClose(window))
{
glfwSwapBuffers(window);
glfwPollEvents();
}
cout << "Hello CMake." << endl;
return 0;
}
shader和Program
若不小心侵权,可以联系我。