public bool Frame() { // Do the input frame processing. if (!Input.Frame()) { return(false); } // Check if the user pressed escape and wants to quit. if (Input.IsEscapePressed()) { return(false); } // Update the system stats. Timer.Frame(); FPS.Frame(); CPU.Frame(); //// Set the frames per second. //if (!Text.SetFps(FPS.Value, D3D.DeviceContext)) // return false; //// Set the cpu usage. //if (!Text.SetCpu(CPU.Value, D3D.DeviceContext)) // return false; // Do the frame input processing. if (!HandleInput(Timer.FrameTime)) { return(false); } // Render the graphics. if (!RenderGraphics()) { return(false); } return(true); }
public bool Initialize(SystemConfiguration configuration, IntPtr windowHandle) { if (Input == null) { Input = new InputClass(); if (!Input.Initialize(configuration, windowHandle)) { MessageBox.Show("Could not initialize input object", "Error", MessageBoxButtons.OK); return false; } } // Create the Direct3D object. D3D = new DX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { MessageBox.Show("Could not initialize Direct3D", "Error", MessageBoxButtons.OK); return false; } // Create the camera object Camera = new Camera(); // Initialize a base view matrix the camera for 2D user interface rendering. Camera.SetPosition(0, 0, -1); Camera.Render(); var baseViewMatrix = Camera.ViewMatrix; // Set the initial position of the camera. var cameraX = 50f; var cameraY = 2f; var cameraZ = -7f; Camera.SetPosition(cameraX, cameraY, cameraZ); // Create the terrain object. Terrain = new Terrain(); // Initialize the terrain object. if (!Terrain.Initialize(D3D.Device)) { MessageBox.Show("Could not initialize the terrain object", "Error", MessageBoxButtons.OK); return false; } // Create the light shader object. ColorShader = new ColorShader(); // Initialize the light shader object. if (!ColorShader.Initialize(D3D.Device, windowHandle)) { MessageBox.Show("Could not initialize the light shader", "Error", MessageBoxButtons.OK); return false; } // Create and initialize Timer. Timer = new Timer(); if (!Timer.Initialize()) { MessageBox.Show("Could not initialize Timer object", "Error", MessageBoxButtons.OK); return false; } // Create the position object. Position = new Position(); // Set the initial position of the viewer to the same as the initial camera position. Position.SetPosition(new Vector3(cameraX, cameraY, cameraZ)); // Create and initialize the FPS object. FPS = new FPS(); FPS.Initialize(); // Create and initialize the CPU. CPU = new CPU(); CPU.Initialize(); // Create the font shader object. FontShader = new FontShader(); // Initialize the font shader object. if (!FontShader.Initialize(D3D.Device, windowHandle)) { MessageBox.Show("Could not initialize font shader object", "Error", MessageBoxButtons.OK); return false; } // Create the text object. Text = new Text(); if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { MessageBox.Show("Could not initialize the text object", "Error", MessageBoxButtons.OK); return false; } if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { MessageBox.Show("Could not set video card into the text object", "Error", MessageBoxButtons.OK); return false; } return true; }
public bool Initialize(SystemConfiguration configuration, IntPtr windowHandle) { if (Input == null) { Input = new InputClass(); if (!Input.Initialize(configuration, windowHandle)) { MessageBox.Show("Could not initialize input object", "Error", MessageBoxButtons.OK); return(false); } } // Create the Direct3D object. D3D = new DX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { MessageBox.Show("Could not initialize Direct3D", "Error", MessageBoxButtons.OK); return(false); } // Create the camera object Camera = new Camera(); // Initialize a base view matrix the camera for 2D user interface rendering. Camera.SetPosition(0, 0, -1); Camera.Render(); var baseViewMatrix = Camera.ViewMatrix; // Set the initial position of the camera. var cameraX = 50f; var cameraY = 2f; var cameraZ = -7f; Camera.SetPosition(cameraX, cameraY, cameraZ); // Create the terrain object. Terrain = new Terrain(); // Initialize the terrain object. if (!Terrain.Initialize(D3D.Device)) { MessageBox.Show("Could not initialize the terrain object", "Error", MessageBoxButtons.OK); return(false); } // Create the light shader object. ColorShader = new ColorShader(); // Initialize the light shader object. if (!ColorShader.Initialize(D3D.Device, windowHandle)) { MessageBox.Show("Could not initialize the light shader", "Error", MessageBoxButtons.OK); return(false); } // Create and initialize Timer. Timer = new Timer(); if (!Timer.Initialize()) { MessageBox.Show("Could not initialize Timer object", "Error", MessageBoxButtons.OK); return(false); } // Create the position object. Position = new Position(); // Set the initial position of the viewer to the same as the initial camera position. Position.SetPosition(new Vector3(cameraX, cameraY, cameraZ)); // Create and initialize the FPS object. FPS = new FPS(); FPS.Initialize(); // Create and initialize the CPU. CPU = new CPU(); CPU.Initialize(); // Create the font shader object. FontShader = new FontShader(); // Initialize the font shader object. if (!FontShader.Initialize(D3D.Device, windowHandle)) { MessageBox.Show("Could not initialize font shader object", "Error", MessageBoxButtons.OK); return(false); } // Create the text object. Text = new Text(); if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { MessageBox.Show("Could not initialize the text object", "Error", MessageBoxButtons.OK); return(false); } if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { MessageBox.Show("Could not set video card into the text object", "Error", MessageBoxButtons.OK); return(false); } return(true); }
public bool Initialize() { // Initialize the system configuration. if (Configuration == null) { Configuration = new SystemConfiguration(); } // Initialize windows api. InitializeWindows(); if (Input == null) { Input = new InputClass(); if (!Input.Initialize(Configuration, MainForm.Handle)) { return(false); } } if (Graphics == null) { Graphics = new GraphicsClass(); if (!Graphics.Initialize(Configuration, MainForm.Handle)) { return(false); } } if (SystemConfiguration.SoundOn) { // Create the sound object Sound = new WaveSound("sound01.wav"); // Initialize the sound object. if (!Sound.Initialize(MainForm.Handle)) { MessageBox.Show("Could not initialize Direct Sound", "Error", MessageBoxButtons.OK); return(false); } } // Create and initialize the FPS object. FPS = new FPS(); FPS.Initialize(); // Create and initialize the CPU. CPU = new CPU(); CPU.Initialize(); // Create and initialize Timer. Timer = new Timer(); if (!Timer.Initialize()) { MessageBox.Show("Could not initialize Timer object", "Error", MessageBoxButtons.OK); return(false); } // Create the position object. Position = new Position(); return(true); }
public bool Initialize() { // Initialize the system configuration. if(Configuration == null) Configuration = new SystemConfiguration(); // Initialize windows api. InitializeWindows(); if (Input == null) { Input = new InputClass(); if (!Input.Initialize(Configuration, MainForm.Handle)) return false; } if (Graphics == null) { Graphics = new GraphicsClass(); if (!Graphics.Initialize(Configuration, MainForm.Handle)) return false; } if (SystemConfiguration.SoundOn) { // Create the sound object Sound = new WaveSound("sound01.wav"); // Initialize the sound object. if (!Sound.Initialize(MainForm.Handle)) { MessageBox.Show("Could not initialize Direct Sound", "Error", MessageBoxButtons.OK); return false; } } // Create and initialize the FPS object. FPS = new FPS(); FPS.Initialize(); // Create and initialize the CPU. CPU = new CPU(); CPU.Initialize(); // Create and initialize Timer. Timer = new Timer(); if (!Timer.Initialize()) { MessageBox.Show("Could not initialize Timer object", "Error", MessageBoxButtons.OK); return false; } // Create the position object. Position = new Position(); return true; }