void CSceneScrollerTapestry::PositionSceneCamera(const QuantityType currentClockTick)
{
	CSceneCameraOpenGL				sceneCamera;

	//View frustrum definition
	//90° Field of view.
	const FloatCoord				kFieldOfView = 90.0;
	//4:3 Aspect ratio.
	const FloatCoord				kAspectRatio = (FloatCoord)4.0 / (FloatCoord)3.0;
	//Near and far clip plane distances
	const FloatCoord				kNearClipDistance = 1.0;
	const FloatCoord				kFarClipDistance = 9000.0;

	//Camera position and orientation
	//Camera position.
	const CFloatPoint				kCameraPosition(0.0, 0.0, 6.0);
	//Camera focus point
	const CFloatPoint				kCameraFocusPoint(0.0, 0.0, 0.0);
	//Camera orientation vector
	const CVector					kCameraOrientVector(0.0, 1.0, 0.0);

	//Adjust the scene camera.
	sceneCamera.SetFOV(kFieldOfView);
	sceneCamera.SetAspectRatio(kAspectRatio);
	sceneCamera.SetNearClipPlane(kNearClipDistance);
	sceneCamera.SetFarClipPlane(kFarClipDistance);

	sceneCamera.SetCameraPosition(kCameraPosition);
	sceneCamera.SetFocusPoint(kCameraFocusPoint);
	sceneCamera.SetCameraUpVector(kCameraOrientVector);

	SetSceneCamera(sceneCamera);
}
D3D12MemoryManagement::D3D12MemoryManagement()
{
    m_ViewportCamera.Initialize(PointF{ 600.0f, 0.0f }, 0.6f);
    SetSceneCamera(&m_ViewportCamera);

    m_DebugCamera = m_ViewportCamera;
    m_pCapturedCamera = &m_ViewportCamera;
    m_pSceneCamera = &m_ViewportCamera;
    ZeroMemory(m_GraphPoints, sizeof(m_GraphPoints));
#if(_DEBUG)
    m_bRenderStats = true;
    m_bDrawMipColors = true;
#endif
}
void CSceneScrollerFlag::PositionSceneCamera(const QuantityType currentClockTick)
{
	CSceneCameraOpenGL				sceneCamera;

	// Amplitude of camera "sway" in the x and y axis.
	const ScalarType				kMaxCameraXSway = 0.5;
	const ScalarType				kMaxCameraYSway = 0.5;

	// Clock tick divisor for camera sway rate (tick is used as input into trigonometric
	// functions that govern sway motion).
	const ScalarType				kCameraSwayRateDivisor = 2000.0;


	//View frustrum definition
	//90° Field of view.
	const FloatCoord				kFieldOfView = 90.0;
	//4:3 Aspect ratio.
	const FloatCoord				kAspectRatio = (FloatCoord)4.0 / (FloatCoord)3.0;
	//Near and far clip plane distances
	const FloatCoord				kNearClipDistance = 1.0;
	const FloatCoord				kFarClipDistance = 5000.0;

	//Camera position and orientation
	//Camera position.
	const CFloatPoint				kCameraPosition(
		::cos((ScalarType)currentClockTick / kCameraSwayRateDivisor) * kMaxCameraXSway,
		::sin((ScalarType)currentClockTick / kCameraSwayRateDivisor) * kMaxCameraYSway, 5.0);
	//Camera focus point
	const CFloatPoint				kCameraFocusPoint(0.0, 0.0, 0.0);
	//Camera orientation vector
	const CVector					kCameraOrientVector(0.0, 1.0, 0.0);

	//Adjust the scene camera.
	sceneCamera.SetFOV(kFieldOfView);
	sceneCamera.SetAspectRatio(kAspectRatio);
	sceneCamera.SetNearClipPlane(kNearClipDistance);
	sceneCamera.SetFarClipPlane(kFarClipDistance);

	sceneCamera.SetCameraPosition(kCameraPosition);
	sceneCamera.SetFocusPoint(kCameraFocusPoint);
	sceneCamera.SetCameraUpVector(kCameraOrientVector);

	SetSceneCamera(sceneCamera);



}
Example #4
0
int main (int argc, char** argv)
{	
	glutInit(&argc, argv);

	if (argc == 1) {
		std::cout << "No file specify." << std::endl;
		return 0;
	}
	
	if (argc > 1) {
		std::string file = argv[1];
		if (file.find(".scene") == std::string::npos)
		{
			std::cout << "Wrong file format." << std::endl;
			return 0;
		}
		else {
			sceneReader.ReadFile(argv[1]);
			bezier_type = sceneReader.GetBezierObjects();
			bezier_type_size = sceneReader.GetNumberOfBezierObjects();
			print_index = -1;
			SetSceneCamera();
		}
	}
	
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
	glutInitWindowPosition(80, 80);
	glutInitWindowSize(800, 600);
	glutCreateWindow("main_t05m01");
	glutDisplayFunc(display);
	glutReshapeFunc(reshape);
	glutSpecialFunc(special);
	glutKeyboardFunc(processNormalKeys);
	init();
	glutMainLoop();
	
	return 0;
}