Exemple #1
0
    public void SavePresets(NoiseFunctions[] savedPresets, string destpath)
    {
        NoisePresets[] presetsToSave = new NoisePresets[savedPresets.Length];
        for (int i = 0; i < savedPresets.Length; i++)
        {
            presetsToSave[i] = noiseFunctions[i].GetPresets();
        }
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = File.Create(destpath);

        bf.Serialize(file, presetsToSave);
        file.Close();
    }
    public NoisePresets GetPresets()
    {
        NoisePresets preset = new NoisePresets();

        preset.enabled      = enabled;
        preset.frequency    = frequency;
        preset.lacunarity   = lacunarity;
        preset.persistence  = persistence;
        preset.octaves      = octaves;
        preset.displacement = displacement;
        preset.distance     = distance;


        if (qualityMode == QualityMode.High)
        {
            preset.qualityMode = NoisePresets.QualityMode.High;
        }
        else if (qualityMode == QualityMode.Medium)
        {
            preset.qualityMode = NoisePresets.QualityMode.Medium;
        }
        else
        {
            preset.qualityMode = NoisePresets.QualityMode.Low;
        }

        if (type == NoiseType.Perlin)
        {
            preset.noiseType = NoisePresets.NoiseType.Perlin;
        }
        else if (type == NoiseType.Billow)
        {
            preset.noiseType = NoisePresets.NoiseType.Billow;
        }
        else if (type == NoiseType.RiggedMultifractal)
        {
            preset.noiseType = NoisePresets.NoiseType.RiggedMultifractal;
        }
        else if (type == NoiseType.Voronoi)
        {
            preset.noiseType = NoisePresets.NoiseType.Voronoi;
        }
        else
        {
            preset.noiseType = NoisePresets.NoiseType.None;
        }

        return(preset);
    }
    public NoiseFunctions(NoisePresets presets)
    {
        enabled     = presets.enabled;
        frequency   = presets.frequency;
        lacunarity  = presets.lacunarity;
        persistence = presets.persistence;
        octaves     = presets.octaves;
        if (presets.qualityMode == NoisePresets.QualityMode.High)
        {
            qualityMode = QualityMode.High;
        }
        else if (presets.qualityMode == NoisePresets.QualityMode.Medium)
        {
            qualityMode = QualityMode.Medium;
        }
        else
        {
            qualityMode = QualityMode.Low;
        }

        if (presets.noiseType == NoisePresets.NoiseType.Billow)
        {
            type = NoiseType.Billow;
        }
        else if (presets.noiseType == NoisePresets.NoiseType.Perlin)
        {
            type = NoiseType.Perlin;
        }
        else if (presets.noiseType == NoisePresets.NoiseType.RiggedMultifractal)
        {
            type = NoiseType.RiggedMultifractal;
        }
        else if (presets.noiseType == NoisePresets.NoiseType.Voronoi)
        {
            type = NoiseType.Voronoi;
        }
        else
        {
            type = NoiseType.None;
        }



        displacement = presets.displacement;
        distance     = presets.distance;
    }
Exemple #4
0
    public NoiseFunction(NoisePresets presets)
    {
        enabled     = presets.enabled;
        frequency   = presets.frequency;
        lacunarity  = presets.lacunarity;
        persistence = presets.persistence;
        octaves     = presets.octaves;
        if (presets.qualityMode == NoisePresets.QualityMode.High)
        {
            qualityMode = QualityMode.High;
        }
        else if (presets.qualityMode == NoisePresets.QualityMode.Medium)
        {
            qualityMode = QualityMode.Medium;
        }
        else
        {
            qualityMode = QualityMode.Low;
        }

        if (presets.noiseType == NoisePresets.NoiseType.Billow)
        {
            type = NoiseType.Billow;
        }
        else if (presets.noiseType == NoisePresets.NoiseType.Perlin)
        {
            type = NoiseType.Perlin;
        }
        else if (presets.noiseType == NoisePresets.NoiseType.RidgedMultifractal)
        {
            type = NoiseType.RidgedMultifractal;
        }
        else if (presets.noiseType == NoisePresets.NoiseType.Voronoi)
        {
            type = NoiseType.Voronoi;
        }
        else
        {
            type = NoiseType.None;
        }

        if (presets.blendMode == NoisePresets.BlendMode.Subtract)
        {
            blendMode = BlendMode.Subtract;
        }
        else if (presets.blendMode == NoisePresets.BlendMode.Max)
        {
            blendMode = BlendMode.Max;
        }
        else if (presets.blendMode == NoisePresets.BlendMode.Min)
        {
            blendMode = BlendMode.Min;
        }
        else if (presets.blendMode == NoisePresets.BlendMode.Multiply)
        {
            blendMode = BlendMode.Multiply;
        }
        else if (presets.blendMode == NoisePresets.BlendMode.Power)
        {
            blendMode = BlendMode.Power;
        }
        else
        {
            blendMode = BlendMode.Add;
        }



        displacement = presets.displacement;
        distance     = presets.distance;
    }