Exemplo n.º 1
0
void do_stuff() {
	float eyepoint[3], viewpoint[3];
	int k;

	glEnable(GL_DEPTH_TEST);
	glClearColor(0.8, 0.6, 0.62, 1.0);
	
	glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 1);
	glUseProgram(0);
	for (k=0; k<3; k++) {
		eyepoint[k] = light0_position[k];
		viewpoint[k] = light0_direction[k] + light0_position[k];
	}
	view_volume(eyepoint, viewpoint);
	drawquads();
	glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
	
	save_matrix(eyepoint, viewpoint);
	glUseProgram(sprogram);
	set_uniform(sprogram);
	glActiveTexture(GL_TEXTURE7);
	glBindTexture(GL_TEXTURE_2D, 1);
	
	eyepoint[0] = 1.0; eyepoint[1] = 2.0; eyepoint[2] = 2.0;
	viewpoint[0] = 0.0; viewpoint[1] = 0.0; viewpoint[2] = 0.0;
	view_volume(eyepoint, viewpoint);
	drawquads();
	glutSwapBuffers();	

}
// Code taken from Dr. Geist's handout
void do_stuff() {
	float eyepoint[3], viewpoint[3];
	int k;
	glEnable(GL_DEPTH_TEST);
	glClearColor(0.8,0.6,0.62,1.0);
	glBindFramebufferEXT(GL_FRAMEBUFFER,1); 
	glUseProgram(0);
	for(k=0;k<3;k++){ 
		eyepoint[k] = light0_position[k]; 
		viewpoint[k] = light0_direction[k]+light0_position[k];
	}
	
	view_volume(eyepoint,viewpoint, 0);

	lights(); 
	aa_display(eyepoint,viewpoint);
	glBindFramebufferEXT(GL_FRAMEBUFFER,0); 

	save_matrix(eyepoint,viewpoint);

	glUseProgram(sprogram);
	glActiveTexture(GL_TEXTURE7);
	glBindTexture(GL_TEXTURE_2D,1);

	// Draw scene from the intended eye point, complete with shadows. 
	eyepoint[0] = 1.0; eyepoint[1] = 2.0; eyepoint[2] = -5.0;
	viewpoint[0] = 0.0; viewpoint[1] = 0.0; viewpoint[2] = 0.0;
	view_volume(eyepoint,viewpoint, 0);
	lights(); 
	aa_display(eyepoint,viewpoint);
	glutSwapBuffers();
}
void aa_display(float *ep, float *vp) {
	int view_pass;
	glClear(GL_ACCUM_BUFFER_BIT);
	for( view_pass=0; view_pass<VPASSES; view_pass++ ){
		view_volume(ep, vp, 1);
		draw_array();
		glAccum(GL_ACCUM,1.0/(float)(VPASSES));
	}
	glAccum(GL_RETURN,1.0);
	glutSwapBuffers();
}
Exemplo n.º 4
0
int main(int argc,char** argv)
{
	int p;
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_RGBA|GLUT_DOUBLE|GLUT_DEPTH);
    glutInitWindowSize(500,500);
    glutInitWindowPosition(100,100);
    glutCreateWindow("phong shaded teapot");
    glActiveTexture(GL_TEXTURE0);
    load_texture(argv[1],1);
      glActiveTexture(GL_TEXTURE1);
    load_texture(argv[2],2);
    glEnable(GL_DEPTH_TEST);
    view_volume();
    set_light();
    set_material();
    p = set_shaders();
    set_uniform(p);
    glutDisplayFunc(renderScene);
    //glutIdleFunc(renderScene);
    glutMainLoop();
    return 0;
}