public PlasmaTexture(GraphicsDevice device, DiamondSquareSeed seed) : base(device, seed.size, seed.size) { var generator = new DiamondSquare(); var values = generator.Generate(seed); Color[] colorData = new Color[seed.size * seed.size]; var range = generator.MaxValue - generator.MinValue; var min = generator.MinValue; for (int x = 0; x < seed.size; ++x) { for (int y = 0; y < seed.size; ++y) { var value = Math.Min(Math.Max(values.Get(seed.size + 1, x, y), 0.0f), 1.0f); //int value = (int)(((values.Get(size + 1, x, y) - min) / range) * 255); colorData[y * seed.size + x] = new Color(value, value, value, 1); } } this.SetData<Color>(colorData); }
public PlasmaTexture(GraphicsDevice device, DiamondSquareSeed seed) : base(device, seed.size, seed.size) { var generator = new DiamondSquare(); var values = generator.Generate(seed); Color[] colorData = new Color[seed.size * seed.size]; var range = generator.MaxValue - generator.MinValue; var min = generator.MinValue; for (int x = 0; x < seed.size; ++x) { for (int y = 0; y < seed.size; ++y) { var value = Math.Min(Math.Max(values.Get(seed.size + 1, x, y), 0.0f), 1.0f); //int value = (int)(((values.Get(size + 1, x, y) - min) / range) * 255); colorData[y * seed.size + x] = new Color(value, value, value, 1); } } this.SetData <Color>(colorData); }