【问题标题】:Perlin Noise Image Creation In C#在 C# 中创建 Perlin 噪声图像
【发布时间】:2013-04-07 23:23:22
【问题描述】:

我已经看到了很多关于 perlin 噪声的例子,但它们都略有不同。

我想知道如何使用 perlin 噪声算法在 c# 中创建图像。

我希望有一个函数,每次我调用它时,都会生成一个新图像并将其放置在图片框中。

我看过柏林噪声伪代码,但我很困惑。我希望能够通过用户输入来操作一些属性。

但现在我的问题是:

如何将 perlin 噪声集成到返回位图数据 (2d) 的 c# 函数中?

【问题讨论】:

    标签: c# .net image picturebox perlin-noise


    【解决方案1】:
            Bitmap bmp = new Bitmap(200, 200);
    
            for (int x = 0; x < 200; x++)
            {
                for (int y = 0; y < 200; y++)
                {
                    int calc = (int)(((SimplexNoise.Noise.Generate(x, y)+1)/2)*255);
                    bmp.SetPixel(x, y, Color.FromArgb(calc, calc, calc));
                }
            }
    

    我使用的是https://code.google.com/p/simplexnoise/,但您可以使用任何噪声发生器。

    希望对你有帮助

    【讨论】:

    • 感谢您的建议,但这不只是制作噪声图吗?我应该说我想要一个像灰度图像这样的“高度图”。
    • 是的,这会创建一个灰度噪声图。这是你开始的。然后你必须对其进行插值以使其窒息。通过将低于海平面的每个值设置为海平面来放置海平面。等等。由于我现在很无聊,如果您有兴趣,我会为您编写一个能够为您做这件事的课程
    • 是的,当然,这对我有很大帮助!我以前从未使用过噪声图生成,我很想尝试这种技术。
    • (顺便说一句。如果你愿意,你可以给我发电子邮件,我也是德国人,所以我们可以更轻松地交流。ace-acid@hotmail.de)
    猜你喜欢
    • 2014-02-15
    • 2014-05-21
    • 2020-06-06
    • 2011-09-20
    • 2021-09-04
    • 2011-07-28
    • 2021-06-30
    • 2013-07-23
    • 2020-06-22
    相关资源
    最近更新 更多