i new opengl , i'm trying examples in book, i've included libraries , headers correctly, seems there still not going right.
these headers included :

this code :
// triangle.cpp // our first opengl program draw triangle on screen. #include <gltools.h> // opengl toolkit #include <glshadermanager.h> // shader manager class #ifdef __apple__ #include <glut/glut.h> // os x version of glut #else #define freeglut_static #include <gl/glut.h> // windows freeglut equivalent #endif glbatch trianglebatch; glshadermanager shadermanager; /////////////////////////////////////////////////////////////////////////////// // window has changed size, or has been created. in either case, need // use window dimensions set viewport , projection matrix. void changesize(int w, int h) { glviewport(0, 0, w, h); } /////////////////////////////////////////////////////////////////////////////// // function needed initialization on rendering context. // first opportunity opengl related tasks. void setuprc() { // blue background glclearcolor(0.0f, 0.0f, 1.0f, 1.0f ); shadermanager.initializestockshaders(); // load triangle 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(); } /////////////////////////////////////////////////////////////////////////////// // called draw scene void renderscene(void) { // clear window current clearing color 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(); // perform buffer swap display buffer glutswapbuffers(); } /////////////////////////////////////////////////////////////////////////////// // main entry point glut based programs 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; } error messsages given :
1>------ build started: project: openglproj, configuration: debug win32 ------ 1>compiling... 1>triangle.cpp 1>d:\xing bizhou\project\openglproj\triangle.cpp(57) : error c2065: '“triangle”' : undeclared identifier 1>d:\xing bizhou\project\openglproj\triangle.cpp(62) : error c2065: '“glew' : undeclared identifier 1>d:\xing bizhou\project\openglproj\triangle.cpp(62) : error c2146: syntax error : missing ')' before identifier 'error' 1>d:\xing bizhou\project\openglproj\triangle.cpp(62) : error c2017: illegal escape sequence 1>d:\xing bizhou\project\openglproj\triangle.cpp(62) : error c2059: syntax error : ')' 1>build log saved @ "file://d:\xing bizhou\project\openglproj\openglproj\debug\buildlog.htm" 1>openglproj - 5 error(s), 0 warning(s) ========== build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
you using "pretty quotes" in code.
c++ expects specific character " used double quote. may not replaced similar-looking characters.
change:
“triangle” , “glew error: %s\n”
to:
"triangle" , "glew error: %s\n"
Comments
Post a Comment