public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); Patch.InitPatchData(Terrain.CellsPerPatch, Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); var tii = new InitInfo { HeightMapFilename = null, LayerMapFilename0 = "textures/grass.dds", LayerMapFilename1 = "textures/darkdirt.dds", LayerMapFilename2 = "textures/stone.dds", LayerMapFilename3 = "Textures/lightdirt.dds", LayerMapFilename4 = "textures/snow.dds", BlendMapFilename = null, HeightScale = 50.0f, HeightMapWidth = 2049, HeightMapHeight = 2049, CellSpacing = 0.5f, Seed = 0, NoiseSize1 = 1.0f, Persistence1 = 0.7f, Octaves1 = 7, NoiseSize2 = 2.5f, Persistence2 = 0.8f, Octaves2 = 3 }; _terrain = new Terrain(); _terrain.Init(Device, ImmediateContext, tii); _camera.Height = _terrain.Height; AddUIElements(); return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); _floorTexSRV = ShaderResourceView.FromFile(Device, "Textures/floor.dds"); _stoneTexSRV = ShaderResourceView.FromFile(Device, "Textures/stone.dds"); _brickTexSRV = ShaderResourceView.FromFile(Device, "Textures/bricks.dds"); BuildShapeGeometryBuffers(); BuildSkullGeometryBuffers(); Window.KeyDown += SwitchLights; return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/snowcube1024.dds", 5000.0f); _texMgr = new TextureManager(); _texMgr.Init(Device); _waves = new Waves(); _waves.Init(Device, _texMgr, 40, 60); BuildShapeGeometryBuffers(); BuildSkullGeometryBuffers(); return true; }
public override bool Init() { if ( ! base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); Patch.InitPatchData(Terrain.CellsPerPatch, Device); var tii = new InitInfo { HeightMapFilename = "Textures/terrain.raw", LayerMapFilename0 = "textures/grass.dds", LayerMapFilename1 = "textures/darkdirt.dds", LayerMapFilename2 = "textures/stone.dds", LayerMapFilename3 = "Textures/lightdirt.dds", LayerMapFilename4 = "textures/snow.dds", BlendMapFilename = "textures/blend.dds", HeightScale = 50.0f, HeightMapWidth = 2049, HeightMapHeight = 2049, CellSpacing = 0.5f }; _terrain = new Terrain(); _terrain.Init(Device, ImmediateContext, tii); _camera.Height = _terrain.Height; _txMgr = new TextureManager(); _txMgr.Init(Device); _treeModel = new BasicModel(Device, _txMgr, "Models/tree.x", "Textures"); _treeInstances = new List<BasicModelInstance>(); for (var i = 0; i < NumTrees; i++) { var good = false; var x = MathF.Rand(0, _terrain.Width); var z = MathF.Rand(0, _terrain.Depth); while (!good) { if (_terrain.Height(x, z) < 12.0f) { good = true; } x = MathF.Rand(-_terrain.Width/2, _terrain.Width/2); z = MathF.Rand(-_terrain.Depth/2, _terrain.Depth/2); } var treeInstance = new BasicModelInstance(_treeModel) { World = Matrix.RotationX(MathF.PI / 2) * Matrix.Translation(x, _terrain.Height(x, z), z) }; _treeInstances.Add(treeInstance); } BuildInstancedBuffer(); return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); Patch.InitPatchData(Terrain.CellsPerPatch, Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); var tii = new InitInfo { HeightMapFilename = null, LayerMapFilename0 = "textures/grass.png", LayerMapFilename1 = "textures/hills.png", LayerMapFilename2 = "textures/stone.png", LayerMapFilename3 = "Textures/lightdirt.dds", LayerMapFilename4 = "textures/snow.png", Material = new Material() { Ambient = Color.LightGray, Diffuse = Color.LightGray, Specular = new Color4(64, 0, 0, 0) }, BlendMapFilename = null, HeightScale = 50.0f, HeightMapWidth = 2049, HeightMapHeight = 2049, CellSpacing = 0.5f, Seed = MathF.Rand(), NoiseSize1 = 3.0f, Persistence1 = 0.7f, Octaves1 = 7, NoiseSize2 = 2.5f, Persistence2 = 0.8f, Octaves2 = 3, }; _terrain = new Terrain(); //_terrain.DebugQuadTree = true; _terrain.Init(Device, ImmediateContext, tii); _camera.Height = _terrain.Height; _camera.SetLens(0.25f * MathF.PI, AspectRatio, 1.0f, 1000.0f); _ssao = new Ssao(Device, ImmediateContext, ClientWidth, ClientHeight, _camera.FovY, _camera.FarZ); _whiteTex = ShaderResourceView.FromFile(Device, "Textures/white.dds"); _sMap = new ShadowMap(Device, SMapSize, SMapSize); _sceneBounds = new BoundingSphere(new Vector3(), MathF.Sqrt(_terrain.Width * _terrain.Width + _terrain.Depth * _terrain.Depth) / 2); _minimap = new Minimap(Device, ImmediateContext, MinimapSize, MinimapSize, _terrain, _camera); _sphereModel = new BasicModel(); _sphereModel.CreateSphere(Device, 0.25f, 10, 10); _sphereModel.Materials[0] = new Material { Ambient = new Color4(63, 0, 0), Diffuse = Color.Red, Specular = new Color4(32, 1.0f, 1.0f, 1.0f) }; _sphereModel.DiffuseMapSRV[0] = _whiteTex; _sphere = new BasicModelInstance(_sphereModel); _unit = new Unit(_sphere, _terrain.GetTile(511, 511), _terrain); FontCache.RegisterFont("bold", 16, "Courier New", FontWeight.Bold); return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/desertcube1024.dds", 5000.0f); _sMap = new ShadowMap(Device, SMapSize, SMapSize); _camera.SetLens(0.25f *MathF.PI, AspectRatio, 1.0f, 1000.0f); _ssao = new Ssao(Device, ImmediateContext, ClientWidth, ClientHeight, _camera.FovY, _camera.FarZ); BuildShapeGeometryBuffers(); BuildSkullGeometryBuffers(); BuildScreenQuadGeometryBuffers(); return true; }
public override bool Init() { if (!base.Init()) return false; Enable4XMsaa = true; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); var tii = new InitInfo { HeightMapFilename = "Textures/terrain.raw", LayerMapFilename0 = "textures/grass.dds", LayerMapFilename1 = "textures/darkdirt.dds", LayerMapFilename2 = "textures/stone.dds", LayerMapFilename3 = "Textures/lightdirt.dds", LayerMapFilename4 = "textures/snow.dds", BlendMapFilename = "textures/blend.dds", HeightScale = 50.0f, HeightMapWidth = 2049, HeightMapHeight = 2049, CellSpacing = 0.5f }; Patch.InitPatchData(Terrain.CellsPerPatch, Device); _terrain = new Terrain(); _terrain.Init(Device, ImmediateContext, tii); _randomTex = Util.CreateRandomTexture1DSRV(Device); _flareTexSRV = Util.CreateTexture2DArraySRV(Device, ImmediateContext, new[] {"Textures/flare0.dds"}, Format.R8G8B8A8_UNorm); _fire = new ParticleSystem(); _fire.Init(Device, Effects.FireFX, _flareTexSRV, _randomTex, 500); _fire.EmitPosW = new Vector3(0, 1.0f, 120.0f); _rainTexSRV = Util.CreateTexture2DArraySRV(Device, ImmediateContext, new[] {"Textures/raindrop.dds"}, Format.R8G8B8A8_UNorm); _rain = new ParticleSystem(); _rain.Init(Device, Effects.RainFX, _rainTexSRV, _randomTex, 10000); return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/snowcube1024.dds", 5000.0f); _stoneTexSRV = ShaderResourceView.FromFile(Device, "Textures/floor.dds"); _brickTexSRV = ShaderResourceView.FromFile(Device, "Textures/bricks.dds"); _stoneNormalTexSRV = ShaderResourceView.FromFile(Device, "Textures/floor_nmap.dds"); _brickNormalTexSRV = ShaderResourceView.FromFile(Device, "Textures/bricks_nmap.dds"); BuildShapeGeometryBuffers(); BuildSkullGeometryBuffers(); Window.KeyDown += SwitchMode; return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); Patch.InitPatchData(Terrain.CellsPerPatch, Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); var tii = new InitInfo { HeightMapFilename = null, LayerMapFilename0 = "textures/grass.dds", LayerMapFilename1 = "textures/darkdirt.dds", LayerMapFilename2 = "textures/stone.dds", LayerMapFilename3 = "Textures/lightdirt.dds", LayerMapFilename4 = "textures/snow.dds", BlendMapFilename = null, HeightScale = 50.0f, HeightMapWidth = 2049, HeightMapHeight = 2049, CellSpacing = 0.5f, Seed = 0, NoiseSize1 = 3.0f, Persistence1 = 0.7f, Octaves1 = 7, NoiseSize2 = 2.5f, Persistence2 = 0.8f, Octaves2 = 3, }; _terrain = new Terrain(); _terrain.Init(Device, ImmediateContext, tii); _camera.Height = _terrain.Height; AddUIElements(); _camera.SetLens(0.25f * MathF.PI, AspectRatio, 1.0f, 1000.0f); _ssao = new Ssao(Device, ImmediateContext, ClientWidth, ClientHeight, _camera.FovY, _camera.FarZ); _whiteTex = ShaderResourceView.FromFile(Device, "Textures/white.dds"); _sMap = new ShadowMap(Device, SMapSize, SMapSize); _sceneBounds = new BoundingSphere(new Vector3(), MathF.Sqrt(_terrain.Width * _terrain.Width + _terrain.Depth * _terrain.Depth) / 2); _minimap = new Minimap(Device, ImmediateContext, MinimapSize, MinimapSize, _terrain, _camera); return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); _texMgr = new TextureManager(); _texMgr.Init(Device); _gridModel = new BasicModel(); _gridModel.CreateGrid(Device, 20, 20, 40, 40); _gridModel.Materials[0] = new Material { Diffuse = Color.LightGray, Specular = new Color4(16, .9f, .9f, .9f) }; _gridModel.DiffuseMapSRV[0] = _texMgr.CreateTexture("Textures/floor.dds"); _gridModel.NormalMapSRV[0] = _texMgr.CreateTexture("textures/floor_nmap.dds"); _grid = new BasicModelInstance(_gridModel) { TexTransform = Matrix.Scaling(10, 10, 1), World = Matrix.Scaling(10, 1, 10) }; InitFireworksRules(); _cylinderModel = new BasicModel(); _cylinderModel.CreateCylinder(Device, 1, 1, 3, 20, 20); _cylinderModel.Materials[0] = new Material { Ambient = Color.Green, Diffuse = Color.Green, Specular = new Color4(64.0f, 1.0f, 1.0f, 1.0f) }; _cylinderModel.DiffuseMapSRV[0] = _texMgr.CreateTexture("Textures/stones.dds"); _cylinderModel.NormalMapSRV[0] = _texMgr.CreateTexture("Textures/stones_nmap.dds"); _cylinder = new BasicModelInstance(_cylinderModel) { World = Matrix.Translation(0, 1.5f, 0) }; return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); Patch.InitPatchData(Terrain.CellsPerPatch, Device); _sky = new Sky(Device, "Textures/grasscube1024.dds", 5000.0f); var tii = new InitInfo { HeightMapFilename = null, LayerMapFilename0 = "textures/grass.dds", LayerMapFilename1 = "textures/darkdirt.dds", LayerMapFilename2 = "textures/stone.dds", LayerMapFilename3 = "Textures/lightdirt.dds", LayerMapFilename4 = "textures/snow.dds", BlendMapFilename = null, HeightScale = 50.0f, HeightMapWidth = 2049, HeightMapHeight = 2049, CellSpacing = 0.5f, Seed = 0, NoiseSize1 = 3.0f, Persistence1 = 0.7f, Octaves1 = 7, NoiseSize2 = 2.5f, Persistence2 = 0.8f, Octaves2 = 3, }; _terrain = new Terrain(); _terrain.Init(Device, ImmediateContext, tii); _camera.Height = _terrain.Height; _camera.SetLens(0.25f * MathF.PI, AspectRatio, 1.0f, 1000.0f); _ssao = new Ssao(Device, ImmediateContext, ClientWidth, ClientHeight, _camera.FovY, _camera.FarZ); _whiteTex = ShaderResourceView.FromFile(Device, "Textures/white.dds"); BuildScreenQuadGeometryBuffers(); _sMap = new ShadowMap(Device, SMapSize, SMapSize); _sceneBounds = new BoundingSphere(new Vector3(), MathF.Sqrt(_terrain.Width * _terrain.Width + _terrain.Depth * _terrain.Depth) / 2); _minimap = new Minimap(Device, ImmediateContext, MinimapSize, MinimapSize, _terrain, _camera); _sphereModel = BasicModel.CreateSphere(Device, 0.25f, 10, 10); _sphereModel.Materials[0] = new Material { Ambient = Color.Red, Diffuse = Color.Red, Specular = new Color4(32, 1.0f, 1.0f, 1.0f) }; _sphereModel.DiffuseMapSRV[0] = _whiteTex; _sphere = new BasicModelInstance {Model = _sphereModel}; _spherePos = new Vector3(float.MaxValue); return true; }
public override bool Init() { if (!base.Init()) return false; Effects.InitAll(Device); InputLayouts.InitAll(Device); RenderStates.InitAll(Device); _sky = new Sky(Device, "Textures/desertcube1024.dds", 5000.0f); _sMap = new ShadowMap(Device, SMapSize, SMapSize); BuildShapeGeometryBuffers(); BuildSkullGeometryBuffers(); BuildScreenQuadGeometryBuffers(); return true; }