2020-01-11 18:32:40 +00:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using CubicNoise.Contracts;
|
|
|
|
|
|
|
|
|
|
namespace CubicNoise
|
|
|
|
|
{
|
2020-01-11 23:32:10 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// This class stores all parameters needed to create a noise engine instance.
|
|
|
|
|
/// </summary>
|
2020-01-11 18:32:40 +00:00
|
|
|
|
public sealed class EngineParameters
|
|
|
|
|
{
|
2020-01-11 23:32:10 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The engine's seed value. To use a string value as seed, use the GetDeterministicHashCode() method
|
|
|
|
|
/// which gets provided by this library. A different seed value results in a complete different result.
|
|
|
|
|
/// When you generate e.g. a landscape, two different seeds will produce different landscapes.
|
|
|
|
|
/// </summary>
|
2020-01-11 18:32:40 +00:00
|
|
|
|
public int Seed { get; set; } = new Random().Next();
|
|
|
|
|
|
2020-01-11 23:32:10 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The desired kind of noise generator.
|
|
|
|
|
/// </summary>
|
2020-01-11 18:32:40 +00:00
|
|
|
|
public NoiseTypes Type { get; set; } = NoiseTypes.UNKNOWN;
|
|
|
|
|
|
2020-01-11 23:32:10 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// A dictionary of additional parameters needed by the chosen noise generator.
|
|
|
|
|
/// </summary>
|
2020-01-11 22:38:15 +00:00
|
|
|
|
public IReadOnlyDictionary<IParameterName, int> IntParameters { get; set; }
|
2020-01-11 18:32:40 +00:00
|
|
|
|
}
|
|
|
|
|
}
|