Я использую VS2017 для работы над кодом, использующим opengl.Одна из проблем, возникших у меня после сборки, - идентификатор C3861 "gluPickMatrix" не найденГрамматическая ошибка отсутствует, и gluPickMatrix правильно связан с определением glu.h.
#include <WinDef.h>
#include <WinGDI.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <stdio.h>
#include <math.h>
#include <WS2tcpip.h>
#include "pch.h"
#define _WINSOCK_DEPRECATED_NO_WARNINGS
//#include <GL/glu.h>
#include <glad/glad.h>
Я включил в заголовок glu.h. И ниже приведено определение gluPickMatrix в glu.h
void APIENTRY gluPickMatrix (
GLdouble x,
GLdouble y,
GLdouble width,
GLdouble height,
GLint viewport[4]);
glInitNames();
glPushName((unsigned)-1);
glViewport(0, 0, winx, winy);
glLoadIdentity();
gluPickMatrix((GLdouble)oldmousex, (GLdouble)(viewport[3] - oldmousey), 10.0, 15.0, viewport);
Это уже было в других файлах .h, но я использовал #определите No_FILENMAME в начале .h, чтобы решить проблему.Тем не менее, Windows блокирует меня от изменения файла glu.h.