草庐IT

perlin-noise

全部标签

c# - C# 中分形 Perlin 噪声函数的均匀分布

我的Perlin噪声函数(以0.75持久性将3D单纯形的6个Octave相加)生成double的二维数组。这些数字每个都归一化为[-1,1],均值为0。我限制它们以避免异常,我认为这是由于浮点精度问题,但我相当确定我的比例因子是在理想情况下足以将噪声输出限制在这个邻域内。无论如何,这就是所有细节。重点是,这是一个256×256的噪声数组:正常拟合的直方图如下所示:Matlab的lillietest是一个应用Lilliefors检验以确定一组数字是否来自正态分布的函数。我的结果一再是1,这意味着这些数字不是正态分布的。我想要一个函数f(x),这样当应用于我的噪声函数的值列表时,结果呈现均

javascript - 在计算 Perlin 噪声时,为什么 Firefox 比 Chrome 慢 30 倍?

我用javascript编写了一个map生成器,使用我在不同地方找到的经典perlin噪音脚本,以获得我想要的功能。我一直在chrome中工作,map没有遇到任何问题。然而,当我在firefox中测试它时,它非常慢——几乎挂掉了我的系统。它在夜间构建中表现更好,但仍然比Chrome慢30倍。你可以在这里找到它的测试页面:http://jsfiddle.net/7Gq3s/这是html代码:PerlinMapTestMyCanvas$(document).ready(function(){//LogtimeintwowaysvarstartTime=newDate().getTime()

JavaScript 单纯形/柏林噪声

我正在尝试在JavaScript中创建一个perlin/单纯形/值噪声函数,它将给出类似于以下的结果:(注意:此图像已经应用了阈值。我想要没有阈值的图像。)我已经在互联网上搜索了2天了。有很多解释噪音的链接和很多代码,但在JavaScript中没有,每当我尝试转换它时,我都会得到奇怪的结果。以下是我的一些尝试:http://jsfiddle.net/GZCye/http://jsfiddle.net/Lk56f/(basedonthis)http://pastebin.com/nMA40SrL(由于某种原因不在Fiddle中运行,basedonthis我认为部分问题可能源于在JavaS

java - Perlin 噪声到百分比

我正在编写一个基于perlin噪声的map生成器并遇到了一个问题:假设我想要30%的水和70%的土砖。使用普通的随机生成器没有问题:tile=rnd.nextFloat()但是perlin噪声是正态分布的(范围从-1到1,均值为0)所以这并不容易。有谁知道将正态分布转换为均匀分布的方法,或者我可以从噪声值中获取百分比的不同方法吗?编辑:70%只是一个例子,我希望能够动态地使用任何值,最多只能有0.1%的精度。编辑2:我想将perlin噪声转换为均匀分布,不是为正态分布(它已经很相似)。 最佳答案 如果你想得到恰好30%的水(或其他一

java - 噪声产生 : 'Room Noise'

上周我正在开发一个世界生成器(用于Minecraft模组)。但是,我不只是在寻找Perlin噪声,而是在寻找基于细胞噪声的东西。我想生成一种地下实验室,存在几个不同大小的房间。为了解释这个问题,我使用了二维示例。噪声发生器获取一个网格单元位置(intx,inty),并返回具有以下结构的对象:booleantop;booleanright;booleandown;booleanleft;introomType;4个boolean值代表启用或禁用的墙:roomType分别代表房间的类型。最终的结果应该是这样的:在这里,背景棋盘图案代表基础网格,黑线代表墙壁。这只是一个可以生成的简单示例,但

java - 柏林噪声的输出范围

我正在研究一些针对相干噪声的各种实现(我知道有一些库,但这主要是出于我自己的启迪和好奇心)以及如何使用它,我对原始版本有一个问题Perlin噪声。根据thisfrequentlylinkedMathFAQ,输出范围将在-1之间和1,但我不明白该值如何进入该范围内。据我了解,该算法基本上是这样的:每个网格点都有一个长度为1的相关随机梯度vector。.然后,对于每个点,对于所有四个周围的网格点,您计算随机梯度和从该网格点出发的vector的点积。然后,您使用奇特的缓动曲线和线性插值将其降低到一个值。但是,这是我的问题:这些点积偶尔会超出范围[-1,1],并且由于您最终在点积之间进行了线性

java - Java 中的 Perlin 噪声

对于我正在进行的元胞自动机项目,我需要使用不同的算法和技术随机生成二维boolean数组。目前,我在应用程序中只有一种随机化类型——循环遍历数组中的每个单元格并生成一个随机double变量,然后如果随机数高于0.5,那么我将该单元格设置为true,如果不是,则它被设置为假。我想研究使用更有趣的算法(例如Perlin噪声或类似算法)来生成这些boolean矩阵。如果您知道除PerlinNoise以外的其他任何东西,那么用于地形生成或类似事物的噪声发生器可能会很好(Minecraft的世界生成给了我这个想法)。唯一的问题是我不知道从哪里开始(有什么想法吗?):)

asp.net - 在 ASP .NET 3.5 Web App 中删除 "noise"单词的最佳方法?

我想根据所显示的文章将一些关键字元标记放入页面中。假设您加载页面blabla.com/article.aspx?id=2id等于2的文章标题为《企业管理中故意失误的智慧》所以我想包含这样的元标记:所以我需要一种方法来排除嘈杂的单词(就像SQLServerFullText所做的那样)。你会怎么做?1)在webconfig中保存干扰词列表?2)将噪音词存入数据库?3)将干扰词保存在文本文件中?4)在代码中硬编码噪声词(NOT=P)那么,您将如何加载这些干扰词以最大程度地减少页面加载?最后,您将如何解析去除干扰词的字符串?谢谢!编辑:噪音(或停止)词与SQLServer2005FTS使用的相

c++ - 帮助使用 perlin 噪声库 libnoise

当我用x、y和z作为整数调用libnoise的getvalue函数时,结果总是返回0。这是正常的吗?当我在教程中尝试1.25、0.75、0.5时http://libnoise.sourceforge.net/tutorials/tutorial2.html我得到0.686347的预期结果。具体来说,我已经尝试使用20以下的整数。我只是不明白这是如何工作的吗?非常感谢任何帮助。 最佳答案 虽然OliCharlesworth是正确的,但您会在整数值处得到零,因为所有零都出现在整数值处。请参阅上图以获得简单的视觉演示!零出现在整数处的原因

c++ - 使用 Perlin 噪音来制造闪电?

实际上,我有几个与主题标题中给出的主题相关的问题。我已经在我的应用程序中使用Perlin函数来创建闪电,但我对我的实现并不完全满意。以下问题基于初始和改进的Perlin噪声实现。为了简化问题,假设我正在创建一个简单的2D闪电,方法是使用1DPerlin函数调制由这些节点处的N个节点组成的水平线的高度。据我所知,传递给Perlin函数的两个后续值必须至少相差一个,否则生成的两个值将相同。这是因为在简单的Perlin实现中,Random函数使用一个int参数,在改进的实现中,值被映射到[0..255],然后用作包含值[0..255]的数组的索引]随机分布。是吗?如何使Perlin函数返回的