public SimplexTerrainComponent(PhysicsWorld physicsWorld) : base(physicsWorld) { rHeights = new float[4]; int numberOfOctaves = 8; octaves = new OpenSimplexNoise[numberOfOctaves]; frequencys = new double[numberOfOctaves]; amplitudes = new double[numberOfOctaves]; for (int i = 0; i < 8; i++) tmpVec[i] = new Vector2f(); for (int i = 0; i < numberOfOctaves; i++) { octaves[i] = new OpenSimplexNoise(666); frequencys[i] = (float)System.Math.Pow(2, i); amplitudes[i] = (float)System.Math.Pow(0.5f, octaves.Length - i); } //Texture splat = AssetManager.LoadTexture("C:\\Users\\User\\Desktop\\test_0_1.png"); ///terrainMaterial.SetValue(TerrainMaterial.TEXTURE_SPLAT, splat); //terrainMaterial.SetValue(Material.COLOR_DIFFUSE, new Vector4f(0.2f, 0.7f, 0.2f, 1.0f)); Texture grass = AssetManager.LoadTexture(Assets.AssetManager.GetAppPath() + "\\textures\\grass4.jpg"); Texture grass_nrm = AssetManager.LoadTexture(Assets.AssetManager.GetAppPath() + "\\textures\\grass_NRM.jpg"); Texture dirt = AssetManager.LoadTexture(Assets.AssetManager.GetAppPath() + "\\textures\\dirt.jpg"); Texture dirt_nrm = AssetManager.LoadTexture(Assets.AssetManager.GetAppPath() + "\\textures\\dirt_NRM.jpg"); terrainMaterial.SetValue(TerrainMaterial.TEXTURE_DIFFUSE0, grass); terrainMaterial.SetValue(TerrainMaterial.TEXTURE_NORMAL0, grass_nrm); terrainMaterial.SetValue(TerrainMaterial.TEXTURE_DIFFUSE_SLOPE, dirt); terrainMaterial.SetValue(TerrainMaterial.TEXTURE_NORMAL_SLOPE, dirt_nrm); terrainMaterial.SetValue(Material.MATERIAL_CASTSHADOWS, false); terrainMaterial.SetValue(Material.SHININESS, 0.1f); terrainMaterial.SetValue(Material.ROUGHNESS, 0.08f); }
static Populator() { int numberOfOctaves = 8; octaves = new OpenSimplexNoise[numberOfOctaves]; frequencys = new double[numberOfOctaves]; amplitudes = new double[numberOfOctaves]; for (int i = 0; i < numberOfOctaves; i++) { octaves[i] = new OpenSimplexNoise(666); frequencys[i] = (float)System.Math.Pow(2, i); amplitudes[i] = (float)System.Math.Pow(0.5f, octaves.Length - i); } }