我把opengl超级宝典第五版的第一个示例代码放到我的工程里,vs用的2017的,freeglut2.6,gltools包含了glew的情况下,还是各种报错,几乎一行一到两个错,编译都通不过,小白求各位过来人指点一下,想尽快先入个门,下面是我放进来的代码和报错,大家看看为什么,是环境的问题吗?
#include
#include
#ifdef __APPLE
#include
#else
#define FREEGLUT_STATIC
#include
#endif // __APPLE
#include
#include "stdafx.h"
GLBatch triangleBatch;
GLShaderManager shaderManager;
//62 CHAPTER 2 Getting Started
//04_0321712617_ch02.qxd 6/21/10 11:35 AM Page 62
void ChangeSize(int w, int h)
{
glViewport(0, 0, w, h);
}
void SetupRC()
{
glClearColor(0.0f, 0.0f, 1.0f, 1.0f);
shaderManager.InitializeStockShaders();
GLfloat vVerts[] = {
-0.5f,0.0f,0.0f,
0.5f,0.0f,0.0f,
0.0f,0.5f,0.0f
};
triangleBatch.Begin(GL_TRIANGLES, 3);
triangleBatch.CopyVertexData3f(vVerts);
triangleBatch.End();
}
void RenderScene(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
GLfloat vRed[] = { 1.0f,0.0f,0.0f,1.0f };
shaderManager.UseStockShader(GLT_SHADER_IDENTITY, vRed);
triangleBatch.Draw();
glutSwapBuffers();
}
int main(int argc, char* argv[])
{
gltSetWorkingDirectory(argv[0]);
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH | GLUT_STENCIL);
glutInitWindowSize(800, 600);
glutCreateWindow("Triangle");
glutReshapeFunc(ChangeSize);
glutDisplayFunc(RenderScene);
GLenum err = glewInit();
if (GLEW_OK != err)
{
fprintf(stderr, "GLEW Error: %s\n", glewGetErrorString(err));
return 1;
}
SetupRC();
glutMainLoop();
return 0;
}
还有就是我没太懂作者这两行什么鬼
62 CHAPTER 2 Getting Started
04_0321712617_ch02.qxd 6/21/10 11:35 AM Page 62
下面是报错信息,太多了(捂眼)
最后就是这么多报错,应该就不是代码的问题,是不是有什么地方缺了什么东西啊,为什么写的时候不报错,一编译就全出来了呢,哭了。。