void ProgramGL::idleFunc()
{
	for (size_t i = 0; i < objects.size(); i++)
		objects[i]->idleFunc();

	sceneLight->setTime(glutGet(GLUT_ELAPSED_TIME));

	// Camera navigation
	if (autoNavigate)
		camera->MoveAuto(delta);
	else
	{
		if (mouseBtnDown)
			camera->handleMouseMove(mouseX, mouseY);

		if (forward || backward || left || right)
			camera->move(delta, forward, backward, left, right);
	}

	// FPS
	UpdateFps();

	glutPostRedisplay();
}
Пример #2
0
void GLScene::drawBackground( QPainter* painter, const QRectF& rect )
{
	emit DrawCanvas();
	UpdateFps();
	QTimer::singleShot(10, this, SLOT(update()));
}