[ create a new paste ] login | about

Link: http://codepad.org/4ViSsdia    [ raw code | output | fork ]

C++, pasted on Sep 6:
#define GLEW_STATIC
#include <GL/glew.h>
#pragma comment(lib,"glew32s.lib")

#include <GL/glut.h>
#include <stdio.h>

GLuint m_vertexBufferID;
GLuint m_indexBufferID;

void init(void)
{
	glewInit();
	glClearColor(0.0, 0.0, 1.0, 1.0);
	glGenBuffers(1,&m_vertexBufferID);
	glGenBuffers(1,&m_indexBufferID);
}

void resize(int w, int h)
{
  glViewport(0, 0, w, h);
  glLoadIdentity();
  glOrtho(-w, w, -h, h, -1.0, 1.0);
}

void display(void)
{
	glClear(GL_COLOR_BUFFER_BIT);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	//glRotated(180,1,0,0);
	glMatrixMode(GL_MODELVIEW);
	glLoadIdentity();

	glDisable(GL_DEPTH_TEST);
	glDisable(GL_LIGHTING);

	//line
	{
		glBegin(GL_LINES);
			glColor4d(1.0, 1.0, 1.0,1.0);
			glVertex3d(0,0,0);
			glVertex3d(1,1,0);
		glEnd();
	}

	//cube by draw element
	glEnable(GL_LIGHTING);
	{

		GLfloat geom[] = 
		{
			-.5f,-.5f,-.5f, -1.0f,0.0f,0.0f,//0
			-.5f,-.5f,-.5f, 0.0f,-1.0f,0.0f,//1
			-.5f,-.5f,-.5f, 0.0f,0.0f,-1.0f,//2

			.5f,-.5f,-.5f, 1.0f,0.0f,0.0f,//3
			.5f,-.5f,-.5f, 0.0f,-1.0f,0.0f,//4
			.5f,-.5f,-.5f, 0.0f,0.0f,-1.0f,//5

			-.5f,.5f,-.5f, -1.0f,0.0f,0.0f,//6
			-.5f,.5f,-.5f, 0.0f,1.0f,0.0f,//7
			-.5f,.5f,-.5f, 0.0f,0.0f,-1.0f,//8

			.5f,.5f,-.5f, 1.0f,0.0f,0.0f,//9
			.5f,.5f,-.5f, 0.0f,1.0f,0.0f,//10
			.5f,.5f,-.5f, 0.0f,0.0f,-1.0f,//11

			-.5f,-.5f,.5f, -1.0f,0.0f,0.0f,//12
			-.5f,-.5f,.5f, 0.0f,-1.0f,0.0f,//13
			-.5f,-.5f,.5f, 0.0f,0.0f,1.0f,//14

			.5f,-.5f,.5f, 1.0f,0.0f,0.0f,//15
			.5f,-.5f,.5f, 0.0f,-1.0f,0.0f,//16
			.5f,-.5f,.5f, 0.0f,0.0f,1.0f,//17

			-.5f,.5f,.5f, -1.0f,0.0f,0.0f,//18
			-.5f,.5f,.5f, 0.0f,1.0f,0.0f,//19
			-.5f,.5f,.5f, 0.0f,0.0f,1.0f,//20

			.5f,.5f,.5f, 1.0f,0.0f,0.0f,//21
			.5f,.5f,.5f, 0.0f,1.0f,0.0f,//22
			.5f,.5f,.5f, 0.0f,0.0f,1.0f,//23
		};
		glBindBuffer(GL_ARRAY_BUFFER,m_vertexBufferID);
		int sizeof_geom = sizeof(geom);
		glBufferData(GL_ARRAY_BUFFER,sizeof(geom),geom,GL_STATIC_DRAW);
		glBindBuffer(GL_ARRAY_BUFFER,0);

		GLubyte indicies[] = 
		{
			0,6,18,12,
			1,4,16,13,
			2,5,11,8,
			3,9,21,15,
			7,10,22,19,
			14,17,23,20,
		};
		glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,m_indexBufferID);
		glBufferData(GL_ELEMENT_ARRAY_BUFFER,sizeof(indicies),indicies,GL_STATIC_DRAW);
		glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,0);

		glEnableClientState(GL_VERTEX_ARRAY);
		glEnableClientState(GL_NORMAL_ARRAY);
		glEnableClientState(GL_INDEX_ARRAY);

		glBindBuffer(GL_ARRAY_BUFFER,m_vertexBufferID);
		const unsigned int sizeof_GLfloat = sizeof(GLfloat);
		glVertexPointer(3,GL_FLOAT,sizeof_GLfloat*6,0);
		glNormalPointer(GL_FLOAT,sizeof_GLfloat*6,(const GLvoid*)(sizeof_GLfloat*3));
		glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,m_indexBufferID);
		glColor4f(1.0,0.0,0.0,1.0);
		glDrawElements(GL_QUADS,24,GL_UNSIGNED_BYTE,0);

		glBindBuffer(GL_ARRAY_BUFFER,0);
		glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,0);


		glDisableClientState(GL_INDEX_ARRAY);
		glDisableClientState(GL_NORMAL_ARRAY);
		glDisableClientState(GL_VERTEX_ARRAY);

	
	}
	glFlush();
}

int main(int argc, char *argv[])
{
	glutInit(&argc,argv);
	glutInitDisplayMode(GLUT_RGBA);
	glutCreateWindow(argv[0]);
	glutDisplayFunc(display);
	glutReshapeFunc(resize);
	init();
	glutMainLoop();
	return 0;
}


Output:
1
2
3
4
5
6
Line 20: error: GL/glew.h: No such file or directory
cc1plus: warnings being treated as errors
Line 3: warning: ignoring #pragma comment 
Line 20: error: GL/glut.h: No such file or directory
Line 8: error: 'GLuint' does not name a type
compilation terminated due to -Wfatal-errors.


Create a new paste based on this one


Comments: