一、环境:qt下qmake编译
首先在qt .pro文件中添加glew和glfw的链接
LIBS+= -L/usr/lib64 -lGLEW
LIBS +=-L/usr/local/lib -lglfw3 -lX11 -lXrandr -lXinerama -lXi -lXxf86vm -lXcursor -lGL -lpthread -ldl
二、用可编程管线实现画三角形分为三步
1.创建vertexshader和fragramshader作为gpu program,
2.创建vertexdata上传数据到gpu
3.调用显卡程序渲染vertexdata,也就是画三角形
三、具体实现
main.cpp
#include<GL/glew.h>
#include <GLFW/glfw3.h>
#include<stdio.h>
#include<glm/glm.hpp>
#include<glm/ext.hpp>
GLfloat deltaTime = 0.0f;
GLfloat lastFrame = 0.0f;
struct Vertex
{
float pos[3];
float color[4];
};
char *LoadFileContent(const char*path)
{
FILE*pFile = fopen(path, "rb");
if (pFile)
{
fseek(pFile, 0, SEEK_END);
int nLen = ftell(pFile);
char*buffer = new char[nLen+1];
rewind(pFile);
fread(buffer, nLen, 1, pFile);
buffer[nLen]='