ludic/noise-value2.html
2026-09-17 22:10:03 +00:00

34 lines
No EOL
2.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Noise.value2 — Ludic</title>
<meta name="description" content="2D value (lattice) noise, deterministic, in [-1, 1].">
<link rel="stylesheet" href="base.css">
<link rel="stylesheet" href="docs.css">
</head>
<body>
<header class="nav"><div class="wrap nav-in"><a class="brand" href="index.html"><span class="logo">L</span> Ludic</a><button class="nav-toggle" aria-label="Toggle menu" aria-expanded="false">☰</button><nav class="nav-links"><a href="index.html">Home</a><a href="api.html">API Reference</a><a class="nav-cta" href="https://git.workshopsoft.io/workshopsoft/ludic">Source ↗</a></nav></div></header>
<main class="wrap item">
<div class="crumbs"><a href="api.html">API Reference</a> <span>›</span> <a href="ns-noise.html">Noise</a> <span>›</span> <span class="here">Noise.value2</span></div>
<div class="item-head">
<span class="kind-badge kind-method">method</span>
<h1 id="top">Noise.value2</h1>
</div>
<code class="sig">Noise.value2(x, y, seed) -&gt; fixed</code>
<div class="desc"><p>Samples 2D **value noise** at <code>(x, y)</code> for the given <code>seed</code> and returns a <a href="type-fixed"><code>fixed</code></a> in <code>[-1, 1]</code>. Value noise assigns a pseudo-random value to each integer lattice point and smoothly interpolates between them with a quintic fade — the cheapest generator here, with a slightly blocky, retro character that suits low-detail height fields, dithering, and per-cell variation.</p><p>Because it is a pure function of <code>(x, y, seed)</code> in fixed point, the same arguments always produce the same value on every platform. Sample at a fractional frequency (scale the coordinates) to change feature size.</p></div>
<div class="params"><h2>Parameters</h2><div class="param" id="param-seed"><code class="pname">seed</code><span class="pdesc">the field selector; different seeds give independent worlds</span></div></div>
<div class="examples"><h2>Example</h2><pre data-lang="ludic">program Value {
entry {
let seed = 1337
let n = Noise.value2(fixed(3) / fixed(8), fixed(5) / fixed(8), seed)
print(Math.floor(Noise.unit(n) * fixed(100))) # a 0..100 height
}
}</pre></div>
<a class="back" href="api.html">← All symbols</a>
</main>
<script src="ludic-highlight.js"></script>
<script>Ludic.highlightAll(); Ludic.installCards(); Ludic.flashTarget();</script>
</body></html>