я после урока "Создание игры с Бенс" (https://www.youtube.com/user/makinggameswithben) на OpenGL, и я получаю этуGlew Отсутствующие GL версии C++ с использованием SDL2 2.0.5 и 2.0.0 GLEW
отсутствующего Gl версии
каждый раз, когда я пытаюсь инициализировать glew.
Я повторно установил glew и SDL2 много раз.
Я не понимаю, что я делаю неправильно.
Я использую GLEW 2.0.0 и 2.0.5 SDL2
headerfile:
#pragma once
#include <string>
#include <vector>
//Graphics
#include <SDL2\SDL.h>
#include <GL\glew.h>
class Display
{
public://functions:
Display(int m_width, int m_heigth, const char title []);
void update();
~Display();
private:
public://variables:
std::vector<char> error;
int width;
int heigth;
private:
//Window pointer
SDL_Window * m_window;
};
.cpp файл:
#include "Display.h"
Display::Display(int m_width, int m_heigth, const char title[])
{
m_window = nullptr;
width = m_width;
heigth = m_heigth;
//Initialize SDL
SDL_Init(SDL_INIT_EVERYTHING);
m_window = SDL_CreateWindow(title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, m_width, m_heigth, SDL_WINDOW_OPENGL);
//error 1:
if (m_window = nullptr) {
error.push_back(255);
}
//error 2:
SDL_GLContext glContext = SDL_GL_CreateContext(m_window);
if (glContext = nullptr) {
error.push_back(254);
}
const GLenum GLerror = glewInit();
//error 3:
if (GLerror != GLEW_OK) {
error.push_back(GLerror);
}
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
glClearColor(0.0f, 0.0f, 1.0f, 1.0f);
}
void Display::update()
{
glClearDepth(1.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
SDL_GL_SwapWindow(m_window);
}
Display::~Display()
{
delete m_window;
SDL_Quit();
}
Возможно, если вы расскажете, как вы скомпилируете программу, это поможет выяснить, в чем проблема. – fedepad