Пример #1
0
        public HeightMap GetOutMap()
        {
            HeightMapGenerationGraph ghp = (HeightMapGenerationGraph)graph;

            float[,] outMap = Noise.GenerateFalloffMap(ghp.mapWidth, ghp.mapHeight);
            return(new HeightMap(outMap));
        }
Пример #2
0
        protected override void Init()
        {
            HeightMapGenerationGraph gph = (HeightMapGenerationGraph)graph;

            if (!gph.requesters.Contains(this))
            {
                gph.requesters.Add(this);
            }
        }
Пример #3
0
 public override object GetValue(NodePort port)
 {
     if (port.fieldName == "outMap")
     {
         HeightMapGenerationGraph ghp = (HeightMapGenerationGraph)graph;
         return(new HeightMap(new float[ghp.mapWidth, ghp.mapHeight]));
     }
     return(null);
 }
Пример #4
0
        public HeightMap GetOutMap()
        {
            HeightMapGenerationGraph ghp = (HeightMapGenerationGraph)graph;

            float[,] outMap = Noise.GenerateNoiseMap
                                  (ghp.prng, ghp.mapWidth, ghp.mapHeight,
                                  GetInputValue("scale", scale), GetInputValue("octaves", octaves),
                                  GetInputValue("persistance", persistance), GetInputValue("lacunarity",
                                                                                           lacunarity), Vector2.zero);

            return(new HeightMap(outMap));
        }
Пример #5
0
        public void GenerateMap()
        {
            HeightMapGenerationGraph ghp      = (HeightMapGenerationGraph)graph;
            AccidentalNoiseSettings  settings = new AccidentalNoiseSettings()
            {
                fractalType = fractalType,
                basisType   = basisType,
                interpType  = interpType,
                scale       = scale,
                octaves     = octaves,
                frequency   = frequency,
                lacunarity  = lacunarity
            };

            outFloatMap = Noise.GenerateNoiseMap(ghp.prng, ghp.mapWidth, ghp.mapHeight, settings);
        }
Пример #6
0
        private void OnDestroy()
        {
            HeightMapGenerationGraph gph = (HeightMapGenerationGraph)graph;

            gph.requesters.Remove(this);
        }
Пример #7
0
        public HeightMap GetOutMap()
        {
            HeightMapGenerationGraph ghp = (HeightMapGenerationGraph)graph;

            float[,] outMap = new float[ghp.mapWidth, ghp.mapHeight];

            int xDist = Mathf.RoundToInt(ghp.mapWidth * xDistPercent);
            int yDist = Mathf.RoundToInt(ghp.mapHeight * yDistPercent);

            // Left side
            for (int x = 0; x < xDist; x++)
            {
                for (int y = 0; y < ghp.mapHeight; y++)
                {
                    float fadeValue = (xDist - (x % (ghp.mapWidth / 2))) / (float)xDist;
                    if (outMap[x, y] < fadeValue)
                    {
                        outMap[x, y] = fadeValue;
                    }
                }
            }

            // Down side
            for (int x = 0; x < ghp.mapWidth; x++)
            {
                for (int y = 0; y < yDist; y++)
                {
                    float fadeValue = (yDist - (y % (ghp.mapHeight / 2))) / (float)yDist;
                    if (outMap[x, y] < fadeValue)
                    {
                        outMap[x, y] = fadeValue;
                    }
                }
            }

            // Right side
            for (int x = ghp.mapWidth - xDist; x < ghp.mapWidth; x++)
            {
                for (int y = 0; y < ghp.mapHeight; y++)
                {
                    float fadeValue = (x - (ghp.mapWidth - xDist)) / (float)xDist;
                    if (outMap[x, y] < fadeValue)
                    {
                        outMap[x, y] = fadeValue;
                    }
                }
            }

            // Up side
            for (int x = 0; x < ghp.mapWidth; x++)
            {
                for (int y = ghp.mapHeight - yDist; y < ghp.mapHeight; y++)
                {
                    float fadeValue = (y - (ghp.mapHeight - yDist)) / (float)yDist;
                    if (outMap[x, y] < fadeValue)
                    {
                        outMap[x, y] = fadeValue;
                    }
                }
            }

            return(new HeightMap(outMap));
        }