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); }
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; }