Ошибка CC2061: синтаксическая ошибка: идентификатор 'GLUquadric'

0

Почему этот код дает мне ошибку в отношении идентификатора GLUquadric? Насколько мне известно, GLFW включит его в сферу охвата.

#ifndef BALL_H
#define BALL_H

#define GLFW_INCLUDE_GLU
#include <GLFW/glfw3.h>

#include <glm/glm.hpp>
#include <glm/ext.hpp>

struct Cuboid;

struct Ball {
    glm::vec3 position;
    glm::vec3 velocity;
    float radius;

    glm::quat orientation;
    glm::vec3 angular_velocity;

    Ball(float radius);
};

void draw(const Ball& ball, GLUquadric* quadric);
void integrate(Ball& ball, float dt, const Cuboid& platform, glm::vec3 torque);

#endif
  • 0
    Пожалуйста, обновите свой вопрос, чтобы показать точное полное сообщение об ошибке.
Теги:
compiler-errors
identifier

1 ответ

0

Я сам понял это решение. Похоже, что.cpp файл, который включает Ball.h (тот, который я опубликовал), уже включал GLFW/glfw3.h но не #define GLFW_INCLUDE_GLU заранее. Я решил это, добавив определение в.cpp файл, но я полагаю, что, может быть, я мог бы лучше решить, создав свой собственный заголовок, opengl.h:

#ifndef OPENGL_H
#define OPENGL_H

#define GLFW_INCLUDE_GLU
#include <GLFW/glfw3.h>

#endif

И затем включая это вместо GLFW/glfw3.h.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню