Я использую MSVC++ и freeglut для использования openGL. Теперь у меня есть класс Camera
, который довольно прост, но также содержит функцию изменения формы моего окна.
Мой вопрос: как я могу установить glutReshapeFunc(void (*callback)(int,int))
на свою функцию в моей камере?
У меня есть следующий код, который не будет работать из-за ошибки компилятора:
int main(int argc, char **argv)
{
Camera *camera = new Camera();
glutReshapeFunc(camera->ReshapeCamera);
}
и мой класс Camera выглядит так в Camera.h:
class Camera
{
public:
Camera(void);
~Camera(void);
void ReshapeCamera(int width, int height);
};
Может быть, это просто более общий вопрос обратного вызова, но единственное, что я нашел в Интернете, это создание некоторого класса-оболочки для обратного вызова. Но не похоже, что это должно быть так сложно. Заранее спасибо.