Witam, czytam książkę "OpenGL księga eksperta wydanie 5" z racji tego, że już wcześniej łyknąłem podstawowych podstaw OpenGLa, to początkowe programy są dla mnie zrozumiałe, lecz problem jest w tym, że w książce jest przedstawiony nowy standard i klasa GLBatch sprawia mi zawód już w momencie wywołania konstruktora. Może ktoś wie w czym tkwi problem?

#include <GLTools.h>
#include <GLShaderManager.h>
 
#ifdef __APPLE__
#include <glut/glut.h>
#else
#define FREEGLUT_STATIC
#include <GL\glut.h>
#endif
 
GLBatch triangleBatch;
GLShaderManager shaderManager;
 
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()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
 
    GLfloat vRed[] = {  1.0f, 0.0f, 0.0f, 0.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("Trójkąt");
    glutReshapeFunc(ChangeSize);
    glutDisplayFunc(RenderScene);
 
    GLenum err = glewInit();
    if(GLEW_OK != err)
    {
        fprintf(stderr, "Błąd GLEW: %s\n", glewGetErrorString(err));
        return 1;
    }
 
    SetupRC();
 
    glutMainLoop();
    return 0;
}

Kompilator wypluwa takie notki:

'opengl.exe': Loaded 'C:\Documents and Settings\MJay\Moje dokumenty\Visual Studio 2010\Projects\opengl\Debug\opengl.exe', Symbols loaded.
'opengl.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\opengl32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\secur32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\user32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\glu32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\ddraw.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\dciman32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\winmm.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\msvcr100d.dll', Symbols loaded.
'opengl.exe': Loaded 'C:\WINDOWS\system32\imm32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\msctf.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\version.dll', Cannot find or open the PDB file
'opengl.exe': Unloaded 'C:\WINDOWS\system32\version.dll'
'opengl.exe': Loaded 'C:\WINDOWS\system32\msctfime.ime', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', Cannot find or open the PDB file
'opengl.exe': Loaded 'C:\WINDOWS\system32\nvoglnt.dll', Cannot find or open the PDB file
The thread 'Win32 Thread' (0x884) has exited with code 0 (0x0).
The thread 'Win32 Thread' (0x1c0) has exited with code 0 (0x0).
The thread 'Win32 Thread' (0x5a0) has exited with code 0 (0x0).
'opengl.exe': Loaded 'C:\WINDOWS\system32\mcd32.dll', Cannot find or open the PDB file
'opengl.exe': Unloaded 'C:\WINDOWS\system32\mcd32.dll'
First-chance exception at 0x00000000 in opengl.exe: 0xC0000005: Access violation reading location 0x00000000.
Unhandled exception at 0x00000000 in opengl.exe: 0xC0000005: Access violation reading location 0x00000000.
The program '[4716] opengl.exe: Native' has exited with code 0 (0x0).

a problem wyskakuje mi w pliku GLBatch.cpp przy funkcji pogrubionej

   #ifndef OPENGL_ES
    glGenVertexArrays(1, &vertexArrayObject);
    **glBindVertexArray(vertexArrayObject);**
    #endif

konstruktor GLBatch wglada nastepujaco:

GLBatch::GLBatch(void): nNumTextureUnits(0), nNumVerts(0), pVerts(NULL), pNormals(NULL), pColors(NULL), pTexCoords(NULL), uiVertexArray(0),
    uiNormalArray(0), uiColorArray(0), **vertexArrayObject(0)**, bBatchDone(false), nVertsBuilding(0), uiTextureCoordArray(NULL)
    {
    }