public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle, Surface surface) { try { Input = new DInput(); Input.Initialize(configuration, windowHandle); D3D = new DDX11(); D3D.Initialize(configuration, windowHandle); Camera = new DCamera(); Camera.SetPosition(0.0f, 0.0f, -1.0f); Camera.Render(); Camera.SetPosition(50.0f, 2.0f, 10.0f); Terrain = new DSurface(); Terrain.Initialize(D3D.Device, surface); ColorShader = new DColorShader(); ColorShader.Initialize(D3D.Device, windowHandle); Position = new DPosition(); Position.SetPosition(Camera.GetPosition().X, Camera.GetPosition().Y, Camera.GetPosition().Z); // Ustawienie Position == Camera Camera.SetRotation(0.32f, -0.9f, 0); Position.RotationX = 0.32f; Position.RotationY = -90f; PositionChangeHandler = new DPositionChangeHandler(Position, Input); return(true); } catch (Exception ex) { throw ex; } }
public bool Initialze(DDX11 D3D, IntPtr windowHandle, DSystemConfiguration configuration) { // Create the user interface object. UserInterface = new DUserInterface(); // Initialize the user interface object. if (!UserInterface.Initialize(D3D, configuration)) { return(false); } // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -10.0f); Camera.Render(); Camera.RenderBaseViewMatrix(); // Create the position object. Position = new DPosition(); // Set the initial position and rotation of the viewer.28.0f, 5.0f, -10.0f Position.SetPosition(512.0f, 30.0f, 1034.0f); Position.SetRotation(0.0f, 180.0f, 0.0f); // Create the light object. Light = new DLight(); // Initialize the light object. Light.SetDiffuseColor(1.0f, 1.0f, 1.0f, 1.0f); Light.Direction = new Vector3(-0.5f, -1.0f, -0.5f); // Create and initialize the frustum object. Frustum = new DFrustum(); Frustum.Initialize(DSystemConfiguration.ScreenDepth); // Create the sky dome object. SkyDomeModel = new DSkyDome(); // Initialize the sky dome object. if (!SkyDomeModel.Initialize(D3D.Device, "skydome.txt")) { return(false); } // Initialize the terrain object. Terrain = new DTerrain(); // Initialize the ground model object. if (!Terrain.Initialize(D3D.Device, "setupS2TutTerr08.txt")) { return(false); } // Set the UI to display by default. DisplayUI = true; // Set wire frame rendering initially to enabled. WireFrame = false; // Set the rendering of cell lines initially to enabled. CellLines = true; return(true); }
// Methods public virtual bool Initialize(string title, int width, int height, bool vSync, bool fullScreen, int testTimeSeconds) { bool result = false; if (Configuration == null) { Configuration = new DSystemConfiguration(title, width, height, fullScreen, vSync); } // Initialize Window. InitializeWindows(title); if (Input == null) { Input = new DInput(); if (!Input.Initialize(Configuration, RenderForm.Handle)) { return(false); } } if (Graphics == null) { Graphics = new DGraphics(); result = Graphics.Initialize(Configuration, RenderForm.Handle); } DPerfLogger.Initialize("RenderForm C# SharpDX: " + Configuration.Width + "x" + Configuration.Height + " VSync:" + DSystemConfiguration.VerticalSyncEnabled + " FullScreen:" + DSystemConfiguration.FullScreen + " " + RenderForm.Text, testTimeSeconds, Configuration.Width, Configuration.Height);; // Create and initialize Timer. Timer = new DTimer(); if (!Timer.Initialize()) { MessageBox.Show("Could not initialize Timer object", "Error", MessageBoxButtons.OK); return(false); } // Create the position object. Position = new DPosition(); // Set the initial position of the viewer to the same as the initial camera position. SharpDX.Vector3 camPos = Graphics.Camera.GetPosition(); Position.SetPosition(camPos.X, camPos.Y, camPos.Z); return(result); }
public bool Initialze(DDX11 D3D, IntPtr windowHandle, DSystemConfiguration configuration) { // Create the user interface object. UserInterface = new DUserInterface(); // Initialize the user interface object. if (!UserInterface.Initialize(D3D, configuration)) { return(false); } // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -10.0f); Camera.Render(); Camera.RenderBaseViewMatrix(); // Create the position object. Position = new DPosition(); // Set the initial position and rotation of the viewer.28.0f, 5.0f, -10.0f Position.SetPosition(128.0f, 10.0f, -10.0f); Position.SetRotation(0.0f, 0.0f, 0.0f); // Initialize the terrain object. Terrain = new DTerrain(); // Initialize the ground model object. if (!Terrain.Initialize(D3D.Device, "setup.txt")) { return(false); } // Set the UI to display by default. DisplayUI = true; // Set wire frame rendering initially to enabled. WireFrame = true; return(true); }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -10.0f); Camera.RenderBaseViewMatrix(); Matrix baseViewMatrix = Camera.BaseViewMatrix; // Set the initial position of the camera. (Since the ViewMatrix is already created from a base position.) 250.0f Camera.SetPosition(100.0f, 2.0f, 250.0f); Camera.SetRotation(0, 180.0f, 0); // Create the model object. TerrainModel = new DTerrainHeightMap(); // Initialize the terrain object. if (!TerrainModel.Initialize(D3D.Device, "heightmap01.bmp", "dirt02.bmp", "bump.bmp")) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position of the viewer to the same as the initial camera position. Position.SetPosition(Camera.GetPosition().X, Camera.GetPosition().Y, Camera.GetPosition().Z); Position.SetRotation(Camera.GetRotation().X, Camera.GetRotation().Y, Camera.GetRotation().Z); // Create the fps object. FPS = new DFPS(); // Initialize the fps object. FPS.Initialize(); // Create the cpu object. CPU = new DCPU(); // Initialize the cpu object. CPU.Initialize(); // Create the text object. Text = new DText(); // Initialize the text object. if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { return(false); } // Set the video card information in the text object. if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { return(false); } // Create the color shader object. TerrainBumpMapShader = new DBumpMapShader(); // Initialize the color shader object. if (!TerrainBumpMapShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the light object. Light = new DLight(); // Initialize the light object. Light.SetDiffuseColor(1.0f, 1.0f, 1.0f, 1.0f); Light.Direction = new Vector3(0.75f, -0.5f, 0.0f); return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position and rotation of the viewer. Position.SetPosition(280.379f, 24.5225f, 367.018f); Position.SetRotation(19.6834f, 222.013f, 0.0f); // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -10.0f); Camera.RenderBaseViewMatrix(); Matrix baseViewMatrix = Camera.BaseViewMatrix; // Create the light object. Light = new DLight(); // Initialize the light object. Light.SetDiffuseColor(1.0f, 1.0f, 1.0f, 1.0f); Light.Direction = new Vector3(0.5f, -0.75f, 0.25f); // Create the model object. TerrainModel = new DTerrainHeightMap(); // Initialize the terrain object. if (!TerrainModel.Initialize(D3D.Device, "hm.bmp", "cm.bmp", 20.0f, "dirt04.bmp", "normal01.bmp")) { return(false); } // Create the color shader object. TerrainShader = new DTerrainShader(); //// Initialize the color shader object. if (!TerrainShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the sky dome object. SkyDome = new DSkyDome(); // Initialize the sky dome object. if (!SkyDome.Initialize(D3D.Device)) { return(false); } // Create the sky dome shader object. SkyDomeShader = new DSkyDomeShader(); // Initialize the sky dome shader object. if (!SkyDomeShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the sky plane object. SkyPlane = new DSkyPlane(); // Initialize the sky plane object. if (!SkyPlane.Initialze(D3D.Device, "cloud001.bmp", "perturb001.bmp")) { return(false); } // Create the sky plane shader object. SkyPlaneShader = new DSkyPlaneShader(); // Initialize the sky plane shader object. if (!SkyPlaneShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the fps object. FPS = new DFPS(); // Initialize the fps object. FPS.Initialize(); // Create the cpu object. CPU = new DCPU(); // Initialize the cpu object. CPU.Initialize(); // Create the text object. Text = new DText(); // Initialize the text object. if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { return(false); } // Set the video card information in the text object. if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { return(false); } // Create the refraction render to texture object. RefractionTexture = new DRenderTexture(); // Initialize the refraction render to texture object. if (!RefractionTexture.Initialize(D3D.Device, configuration)) { return(false); } // Create the reflection render to texture object. ReflectionTexture = new DRenderTexture(); // Initialize the reflection render to texture object. if (!ReflectionTexture.Initialize(D3D.Device, configuration)) { return(false); } // Create the reflection shader object. ReflectionShader = new DReflectionShader(); // Initialize the reflection shader object. if (!ReflectionShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the water object. WaterModel = new DWater(); // Initialize the water object. if (!WaterModel.Initilize(D3D.Device, "waternormal.bmp", 3.75f, 110.0f)) { return(false); } // Create the water shader object. WaterShader = new DWaterShader(); // Initialize the water shader object. if (!WaterShader.Initialize(D3D.Device, windowHandle)) { return(false); } return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -1.0f); Camera.Render(); Matrix baseViewMatrix = Camera.ViewMatrix; // Set the initial position of the camera. Camera.SetPosition(50.0f, 2.0f, -7.0f); // Create the model object. Terrain = new DTerrain(); // Initialize the terrain object. if (!Terrain.Initialize(D3D.Device)) { return(false); } // Create the color shader object. ColorShader = new DColorShader(); // Initialize the color shader object. if (!ColorShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position of the viewer to the same as the initial camera position. Position.SetPosition(Camera.GetPosition().X, Camera.GetPosition().Y, Camera.GetPosition().Z); // Create the fps object. FPS = new DFPS(); // Initialize the fps object. FPS.Initialize(); // Create the cpu object. CPU = new DCPU(); // Initialize the cpu object. CPU.Initialize(); // Create the font shader object. FontShader = new DFontShader(); // Initialize the font shader object. if (!FontShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the text object. Text = new DText(); // Initialize the text object. if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { return(false); } // Set the video card information in the text object. if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { return(false); } return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the shader manager object. ShaderManager = new DShaderManager(); // Initialize the shader manager object. if (!ShaderManager.Initilize(D3D, windowHandle)) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position and rotation of the viewer. Position.SetPosition(0.0f, 1.5f, -4.0f); Position.SetRotation(15.0f, 0.0f, 0.0f); // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -10.0f); Camera.Render(); Camera.RenderBaseViewMatrix(); // Create the fps object. FPS = new DFPS(); //// Initialize the fps object. FPS.Initialize(); // Create the user interface object. UserInterface = new DUserInterface(); // Initialize the user interface object. if (!UserInterface.Initialize(D3D, configuration)) { return(false); } // Create the ground model object. GroundModel = new DModel(); // Initialize the ground model object. if (!GroundModel.Initialize(D3D.Device, "plane01.txt", "rock015.bmp")) { return(false); } // Create the foliage object. Foliage = new DFoliage(); // Initialize the foliage object. if (!Foliage.Initialize(D3D.Device, "grass01.bmp", 500)) { return(false); } return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -1.0f); Camera.Render(); Matrix baseViewMatrix = Camera.ViewMatrix; // Set the initial position of the camera. (Since the ViewMatrix is already created from a base position.) Camera.SetPosition(40.0f, 2.0f, -7.0f); // Create the model object. TerrainModel = new DTerrain(); // Initialize the terrain object. if (!TerrainModel.Initialize(D3D.Device, "heightmap01.bmp", "dirt03.bmp", "colorm01.bmp")) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position of the viewer to the same as the initial camera position. Position.SetPosition(Camera.GetPosition().X, Camera.GetPosition().Y, Camera.GetPosition().Z); // Create the fps object. FPS = new DFPS(); // Initialize the fps object. FPS.Initialize(); // Create the cpu object. CPU = new DCPU(); // Initialize the cpu object. CPU.Initialize(); // Create the text object. Text = new DText(); // Initialize the text object. if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { return(false); } // Set the video card information in the text object. if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { return(false); } // Create the color shader object. TerrainShader = new DTerrainShader(); // Initialize the color shader object. if (!TerrainShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the light object. Light = new DLight(); // Initialize the light object. Light.SetAmbientColor(0.05f, 0.05f, 0.05f, 1.0f); Light.SetDiffuseColor(1.0f, 1.0f, 1.0f, 1.0f); Light.Direction = new Vector3(-0.5f, -1.0f, 0.0f); // Create the texture shader object. TextureShader = new DTextureShader(); // Initialize the texture shader object. if (!TextureShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Get the size of the terrain as the minimap will require this information. int textureWidth = TerrainModel.TextureWidth; int textureHeight = TerrainModel.TextureHeight; // Create the mini map object. MiniMap = new DMiniMapClass(); // Initialize the mini map object. if (!MiniMap.Initialize(D3D.Device, windowHandle, configuration.Width, configuration.Height, baseViewMatrix, (float)(textureWidth - 1), (float)(textureHeight - 1))) { return(false); } return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle, string appTitle, int testTimeSeconds) { try { // Create the input object. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the timer object. Timer = new DTimer(); // Initialize the timer object. if (!Timer.Initialize()) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position. Position.SetPosition(0.0f, 7.0f, -11.0f); Position.SetRotation(20.0f, 0.0f, 0.0f); #endregion #region Initialize Camera // Create the camera object Camera = new DCamera(); // Create the light object. Light = new DLight(); // Initialize the light object. Light.GenerateOrthoMatrix(15.0f, 15.0f, SHADOWMAP_DEPTH, SHADOWMAP_NEAR); #endregion // Create the ground model object. GroundModel = new DModel(); // Initialize the ground model object. if (!GroundModel.Initialize(D3D.Device, "plane01.txt", "dirt.bmp", 2.0f)) { return(false); } // Set the position for the ground model. GroundModel.SetPosition(0.0f, 1.0f, 0.0f); // Create the tree object. TreeModel = new DTreeModel(); // Initialize the shadow shader object. if (!TreeModel.Initialize(D3D.Device, "trunk001.txt", "trunk001.bmp", "leaf001.txt", "leaf001.bmp", 0.1f)) { return(false); } // Set the position for the tree model. TreeModel.SetPosition(0.0f, 1.0f, 0.0f); // Create the render to texture object. RenderTexture = new DRenderTexture(); // Initialize the render to texture object. if (!RenderTexture.Initialize(D3D.Device, SHADOWMAP_WIDTH, SHADOWMAP_HEIGHT, SHADOWMAP_DEPTH, SHADOWMAP_NEAR)) { return(false); } // Create the depth shader object. DepthShader = new DDepthShader(); // Initialize the depth shader object. if (!DepthShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the transparent depth shader object. TransparentDepthShader = new DTransparentDepthShader(); // Initialize the transparent depth shader object. if (!TransparentDepthShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the shadow shader object. ShadowShader = new DShadowShader(); // Initialize the shadow shader object. if (!ShadowShader.Initialize(D3D.Device, windowHandle)) { return(false); } DPerfLogger.Initialize("WinForms C# SharpDX: " + configuration.Width + "x" + configuration.Height + " VSync:" + DSystemConfiguration.VerticalSyncEnabled + " FullScreen:" + DSystemConfiguration.FullScreen + " " + appTitle, testTimeSeconds, configuration.Width, configuration.Height); return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the camera object Camera = new DCamera(); // Initialize a base view matrix with the camera for 2D user interface rendering. Camera.SetPosition(0.0f, 0.0f, -10.0f); Camera.RenderBaseViewMatrix(); Matrix baseViewMatrix = Camera.BaseViewMatrix; // Set the initial position of the camera. Camera.SetPosition(100.0f, 2.0f, 5.0f); // Create the model object. TerrainModel = new DTerrain(); // Initialize the terrain object. if (!TerrainModel.Initialize(D3D.Device, "heightmap01.bmp", "dirt02.bmp", "colorm01.bmp", "detail001.bmp")) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position of the viewer to the same as the initial camera position. Position.SetPosition(Camera.GetPosition().X, Camera.GetPosition().Y, Camera.GetPosition().Z); // Create the fps object. FPS = new DFPS(); // Initialize the fps object. FPS.Initialize(); // Create the cpu object. CPU = new DCPU(); // Initialize the cpu object. CPU.Initialize(); // Create the text object. Text = new DText(); // Initialize the text object. if (!Text.Initialize(D3D.Device, D3D.DeviceContext, windowHandle, configuration.Width, configuration.Height, baseViewMatrix)) { return(false); } // Set the video card information in the text object. if (!Text.SetVideoCard(D3D.VideoCardDescription, D3D.VideoCardMemory, D3D.DeviceContext)) { return(false); } // Create the terrain shader object. TerrainShader = new DTerrainShader(); // Initialize the terrain shader object. if (!TerrainShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the light object. Light = new DLight(); // Initialize the light object. Light.SetAmbientColor(0.05f, 0.05f, 0.05f, 1.0f); Light.SetDiffuseColor(1.0f, 1.0f, 1.0f, 1.0f); Light.Direction = new Vector3(-0.5f, -1.0f, 0.0f); // Create the debug window bitmap object. DebugWindow = new DDebugWindow(); // Initialize the debug window bitmap object. if (!DebugWindow.Initialize(D3D.Device, configuration.Width, configuration.Height, 256, 256)) { return(false); } // Create the texture shader object. TextureShader = new DTextureShader(); // Initialize the texture shader object. if (!TextureShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the render to texture object. RenderTexture = new DRenderTexture(); // Initialize the render to texture object. if (!RenderTexture.Initialize(D3D.Device, configuration)) { return(false); } // Create the depth shader object. DepthShader = new DDepthShader(); // Initialize the depth shader object. if (!DepthShader.Initialize(D3D.Device, windowHandle)) { return(false); } return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }
// Methods. public bool Initialize(DSystemConfiguration configuration, IntPtr windowHandle) { try { // Create the input object. The input object will be used to handle reading the keyboard and mouse input from the user. Input = new DInput(); // Initialize the input object. if (!Input.Initialize(configuration, windowHandle)) { return(false); } // #region Initialize System // Create the Direct3D object. D3D = new DDX11(); // Initialize the Direct3D object. if (!D3D.Initialize(configuration, windowHandle)) { return(false); } // Create the position object. Position = new DPosition(); // Set the initial position and rotation of the viewer. Position.SetPosition(15.0f, 13.0f, 20.0f); Position.SetRotation(25.0f, 180.0f, 0.0f); // Create the camera object Camera = new DCamera(); // Create the light object. Light = new DLight(); // Initialize the light object. Light.Direction = new Vector3(0.5f, -0.75f, 0.0f); // Create the model object. TerrainModel = new DTerrainHeightMap(); // Initialize the terrain object. if (!TerrainModel.Initialize(D3D.Device, "hm01.bmp", 10.0f)) { return(false); } // Create the color shader object. TerrainShader = new DTerrainShader(); //// Initialize the color shader object. if (!TerrainShader.Initialize(D3D.Device, windowHandle)) { return(false); } // Create the first color texture object. ColourTexture1 = new DTexture(); // Load the first color texture object. if (!ColourTexture1.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "dirt001.bmp")) { return(false); } // Create the second color texture object. ColourTexture2 = new DTexture(); // Load the second color texture object. if (!ColourTexture2.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "dirt004.bmp")) { return(false); } // Create the third color texture object. ColourTexture3 = new DTexture(); // Load the third color texture object. if (!ColourTexture3.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "dirt002.bmp")) { return(false); } // Create the fourth color texture object. ColourTexture4 = new DTexture(); // Load the forth color texture object. if (!ColourTexture4.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "stone001.bmp")) { return(false); } // Create the first alpha texture object. AlphaTexture1 = new DTexture(); // Load the first alpha texture object. if (!AlphaTexture1.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "alphaRoad001.bmp")) { return(false); } // Create the first normal texture object. NormalTexture1 = new DTexture(); // Load the first alpha/Normal texture object. if (!NormalTexture1.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "normal001.bmp")) { return(false); } // Create the second normal texture object. NormalTexture2 = new DTexture(); // Load the second alpha/Normal texture object. if (!NormalTexture2.Initialize(D3D.Device, DSystemConfiguration.DataFilePath + "normal002.bmp")) { return(false); } return(true); } catch (Exception ex) { MessageBox.Show("Could not initialize Direct3D\nError is '" + ex.Message + "'"); return(false); } }