OpenGL运行不出来图形
代码描述:主要通过键盘来控制图形的移动
问题:代码不报错,但是界面上运行不出图形???
main.cpp
#include <iostream>
#include <GL/glew.h>
#include <glm/gtc/matrix_transform.hpp>
#include<glm/glm.hpp>
#include<glm/gtc/type_ptr.hpp>
#include <GLFW/glfw3.h>
#include "Shader.h"
#include "Camera.h"
#define ERRORLOG(message) std::cout << message << std::endl;glfwTerminate();return -1;
/*
const GLchar* vertexShaderSource = "$version 330 core\n"
"layout(location = 0) in vec3 position;\n"
"void main()\n"
"{\n"
"gl_Position = vec4(position,1.0f);\n"
"}";
const GLchar* fragmentShaderSource = "#version 330 core\n"
"out vec4 FragColor;\n"
"void main()\n"
"{\n"
"FragColor = vec4(1.0f,0.0f,0.0f,0.0f);\n"
"}";
static void CreateShaderProgram(GLuint shaderProgram)
{
GLuint vertexShader = glCreateShader(GL_VERTEX_SHADER);
glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
glCompileShader(vertexShader);
GLint success;
GLchar infoLog[1024];
glGetShaderiv(vertexShader, GL_COMPILE_STATUS, &success);
if (!success)
{
glGetShaderInfoLog(vertexShader, 1024, NULL, infoLog);
std::cout << "ERROR::VERTEX::COMPILATION_FAILED\n" << infoLog << std::endl;
}
GLuint fragmentShader = glCreateShader(GL_FRAGMENT_SHADER);
glShaderSource(fragmentShader, 1, &fragmentShaderSource, NULL);
glCompileShader(fragmentShader);
glGetShaderiv(fragmentShader, GL_COMPILE_STATUS, &success);
if (!success)
{
glGetShaderInfoLog(fragmentShader, 1024, NULL, infoLog);
std::cout << "ERROR::FRAGMENT::COMPILATION_FAILED\n" << infoLog << std::endl;
}
glAttachShader(shaderProgram, vertexShader);
glAttachShader(shaderProgram, fragmentShader);
glLinkProgram(shaderProgram);
glGetProgramiv(shaderProgram, GL_LINK_STATUS, &success);
if (!success)
{
glGetProgramInfoLog(shaderProgram, 1024, NULL, infoLog);
std::cout << "ERROR::PROGRAM::LINK_FAILED\n" << infoLog << std::endl;
}
#ifndef __APPLE__
glValidateProgram(shaderProgram);
glGetProgramiv(shaderProgram, GL_VALIDATE_STATUS, &success);
if (!success)
{
glGetProgramInfoLog(shaderProgram, 1024, NULL, infoLog);
std::cout << "ERROR::PROGRAM::VALIDATION_FAILED\n" << infoLog << std::endl;
}
#endif
glDeleteShader(vertexShader);
glDeleteShader(fragmentShader);
}
*/
//Shader shader = Shader("res/core.vs", "res/core.fs");
Camera camera(glm::vec3(0.0f, 0.0f, -2.0f));
void KeyCallback(GLFWwindow* window, int key, int scancode, int action, i