processing / processing/processing-website

Fix Inaccuracies in `noise()` Documentation Regarding Perlin Noise vs Value Noise

Aperta
#591 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
MDX
Stelle
90
Fork
122
Merge medio
1h 43m
PR unite (30g)
3

Descrizione

Select the type of content error.

Factual Mistake

Section

Reference

Location of the error

https://processing.org/reference/noise_.html

Describe the error

This issue is a follow-up to this comment in the p5.js repository.

The current noise() documentation states in multiple places that the function implements Perlin noise. However, this is inaccurate. Processing actually uses a form of value noise, originally ported by Karsten Schmidt from the demo "Art" by the German demoscene group Farbrausch.

This issue was discussed back in 2014, and as a result, the following line was added to the documentation:

There have been debates over the accuracy of the implementation of noise in Processing. For clarification, it's an implementation of "classic Perlin noise" from 1983, and not the newer "simplex noise" method from 2001.

However, this addition did not address the actual inaccuracy, which is that Processing's implementation uses value noise, not Perlin noise. In fact, it reinforces the prior misleading statements.

Suggested correction

I suggest editing the inline JavaDoc in PApplet.java here to add something like the following.

The noise() function is similar to "Perlin noise," a popular technique for for generating smooth, random-like patterns, invented by Ken Perlin while animating the original Tron film in the 1980s. Note that noise() is not an exact implementation of Perlin noise, but belongs to a category called "value noise." which has slightly different properties.

The rest of the documentation page could be similarly edited to focus more on practical use, possibly taking inspiration from the p5.js version.

Related discussions

In processing/processing: Real Perlin noise would be nice #2549
In processing/processing-docs: Perlin noise documentation #51
In processing/processing-web-archive: Perlin noise documentation #423
In processing/p5.js: Code improvements of the Perlin noise generator. #875

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia con il JavaDoc inline di noise() in core/src/processing/core/PApplet.java nella posizione collegata, quindi esamina la pagina di riferimento di noise() all’indirizzo processing.org/reference/noise_.html e la reference di p5.js collegata. Aggiorna le descrizioni inesatte del rumore di Perlin per distinguerlo dal value noise e assicurati che il testo della pagina correlata rifletta la spiegazione corretta.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
documentation
Tipo di issue
Documentazione
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.