【问题标题】:Perlin noise, how to detect bright/dark areas?Perlin 噪声,如何检测亮/暗区域?
【发布时间】:2016-12-03 22:52:35
【问题描述】:

我需要一些关于柏林噪音的帮助。

我想创建一个随机地形生成器。我正在使用柏林噪声来确定山脉和大海的去向。从随机噪声中,我得到如下信息:

http://prntscr.com/df0rqp

现在,我如何才能真正检测出更亮和更暗的区域在哪里? 我尝试使用 display.colorSample 返回像素的 RGB 颜色和 alpha,但这对我没有多大帮助。

如果只有白色和红色,我可以很容易地检测出明亮区域的位置(白色会很大,红色会很小),反之亦然。 但是,因为我有红色、绿色和蓝色,所以这很难。

综上所述,如何检测白色区域和红色区域的位置?

【问题讨论】:

  • 检查event.b + event.g - 白色区域应该足够大,红色区域应该足够小

标签: lua coronasdk


【解决方案1】:

你在这里有一个根本的误解。 perlin 噪声函数实际上仅来自 (x,y)->p 。 [它也适用于更高的维度]。但你所看到的只是你的图书馆很好。噪声函数从两个实数变为一个。将一个结果值 p 映射到颜色渐变会很有帮助。但这仅用于可视化。 p 不是颜色,只是另一个数字。直接用那个!如果p

【讨论】:

    【解决方案2】:

    我建议这样做: 1.将图像的色调转换为红色,如here 2.使用红色通道检索一些掩码。 3. 可选:将最大/最小亮度缩放到 0-255 范围内。

    【讨论】:

      猜你喜欢
      • 2014-02-15
      • 2020-06-06
      • 2011-09-20
      • 2021-06-30
      • 2013-07-23
      • 2020-06-22
      • 2011-03-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多