コード例 #1
0
 void BatchedSprite::render()
 {
     if (!_static) {
         create_buffer();
     } else {
         render_static();
     }
 }
コード例 #2
0
// Renders scene in either GLU_BACK_LEFT or GLU_BACK_RIGHT buffer
void Render (int side)
{


	if (side == 1) 
	{ 					
		for (int i = 0; i < 6; i++) 
		{
			f[i] = sterioObj.FrustumLeft[i];
		}

		for (int i = 0; i < 9; i++)
		{
			l[i] = sterioObj.LookAtLeft[i];
		}
	} 

	else 
	{ 
		for (int i = 0; i < 6; i++)
		{
			f[i] = sterioObj.FrustumRight[i];
		}

		for (int i = 0; i < 9; i++)
		{
			l[i] = sterioObj.LookAtRight[i];
		}
	}

	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();

	glFrustumf(f[0],f[1],f[2],f[3],f[4],f[5]);

	glMatrixMode(GL_MODELVIEW);
	glLoadIdentity();
	gluLookAt(l[0], l[1], l[2], l[3], l[4], l[5], l[6], l[7], l[8]); 

	// draw the array of cubes at varying positions across the screen
	// rotating centre cube
	glTranslatef (0.0f, 0.0f, -1500.0f); // x, y, z

	glPushMatrix();	
	glTranslatef (-60.0f, 0.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();

	glPushMatrix();	
	glTranslatef (-60.0f, -30.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();

	glPushMatrix();	
	glTranslatef (60.0f, 0.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();
	
	glPushMatrix();	
	glTranslatef (60.0f, 30.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();
	
	glPushMatrix();	
	glTranslatef (0.0f, -30.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();

	glPushMatrix();	
	glTranslatef (0.0f, 30.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();
	
	glPushMatrix();	
	glTranslatef (-60.0f, 30.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();
	
	glPushMatrix();	
	glTranslatef (60.0f, -30.0f, 0.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();

	glPushMatrix();	
	glTranslatef (0.0f, 0.0f, 1000.0f); // x, y, z
	glRotatef(XRotate,0.1, 0.1, 0.8);
	render_static();
	glPopMatrix();
	
}