コード例 #1
0
ファイル: OSGGPUVolRTV0.cpp プロジェクト: marcusl/OpenSG
// This display function is called once pr frame 
void GPUVolRTV0::display(DrawEnv *pEnv)
{
    // was in init before. As OpenSG resets those they have to be
    // restored to the required values
	glEnable(GL_CULL_FACE);
	glClearColor(0.0, 0.0, 0.0, 0);
    glDisable(GL_LIGHTING);
	glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
    // end

	static float rotate = 0; 
	rotate += 0.25;

//	resize(WINDOW_SIZE,WINDOW_SIZE);
    resize(pEnv->getPixelWidth(), pEnv->getPixelHeight());
	enable_renderbuffers();

	glLoadIdentity();
	glTranslatef(0,0,-2.25);
	glRotatef(rotate,0,1,1);
	glTranslatef(-0.5,-0.5,-0.5); // center the texturecube

    glGetFloatv(GL_MODELVIEW_MATRIX, mModelView);
    glGetFloatv(GL_PROJECTION_MATRIX, mProj);

	render_backface();
	raycasting_pass();
	disable_renderbuffers();
	render_buffer_to_screen(pEnv);
//	glutSwapBuffers();
}
コード例 #2
0
ファイル: cgtk.cpp プロジェクト: sqhe/Airpollution
void cgtk::display()
{
	//static float rotate=0;
	//rotate += 0.25;

	//resize(WINDOW_SIZE,WINDOW_SIZE);

	//enable_renderbuffers();

	////glMatrixMode(GL_MODELVIEW);
	////glPushMatrix();
	//glLoadIdentity();
	//glTranslatef(0,0,-2.25);
	//glRotatef(rotate,0,1,1);
	//glTranslatef(-0.5,-0.5,-0.5);


	//render_backface();
	//raycasting_pass();
	//disable_renderbuffers();
	//render_buffer_to_screen();
	////glutSwapBuffers();

	//float *b;

	//b=new float[6];

	//for(int i=0;i<6;i+=2)
	//{
	//	b[i]=0;
	//	b[i+1]=2;
	//}


	static float rotate=0;
	rotate += 0.25;

	//resize(WINDOW_SIZE_W,WINDOW_SIZE_H);

	enable_renderbuffers();

	//glMatrixMode(GL_MODELVIEW);
	//glPushMatrix();
	//glLoadIdentity();
	//glTranslatef(0,0,-2.25);
	//glRotatef(rotate,0,1,1);

	//glTranslatef(-0.5,-0.5,-0.5);
	render_backface();
	raycasting_pass();
	//disable_renderbuffers();
	//render_buffer_to_screen();
	//glutSwapBuffers();
	//glMatrixMode(GL_MODELVIEW);
	//glLoadIdentity();
	//glPopMatrix();

	//delete [] b;
}