CodingTrain / CodingTrain/Suggestion-Box

[Challenge] Tileable 2D Noise (2D Polar Noise)

Aperta
#1,374 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Challenge
Lingua principale
Nessun dato sulla lingua
Stelle
570
Fork
85
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

# Challenge: Tileable 2D Noise (2D Polar Noise)

Hi @shiffman, after seeing your video about **polar noise** ([Coding Challenge #136.1: Polar Perlin Noise Loops](https://www.youtube.com/watch?v=ZI1dmHv3MeM)), where the end of a line matches the start, I've decided to make an Library to help making tileable noise that can be used to make seamless looping textures.

### Here's the link, and an example: [TileableNoise.js](https://github.com/DaviAMSilva/TileableNoise.js)
![example_simple](https://user-images.githubusercontent.com/53585493/63202597-d1288d80-c060-11e9-82f5-1a4669d38580.png)

So, I think this could make a awesome coding challenge, because most of the code can be copied over from that polar noise video, or even if you want, from my library, and this can really be useful for some people.

The technical part is really simple, you only need to make two circles from two angles given by the two Cartesian coordinates of the point you're calculating the noise. Then you can simply use the 4 coordinates of the 2 circles in a 4D noise space and voilà, you have tileable 2D noise. Unfortunately *you will need an 4D noise function to do that*.

### Here's an example code:
```
let angle1 = "Relative to x position";
let angle2 = "Relative to y position";

let X = r * cos(angle1);
let Y = r * sin(angle1);
let Z = r * cos(angle2);
let W = r * sin(angle2);

return noise4D(X, Y, Z, W);
```

**Btw, I love your videos.**

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Esamina prima la libreria collegata TileableNoise.js e il video di riferimento Polar Perlin Noise Loops. Definisci la sfida relativa al rumore 2D piastrellabile e verifica che un esempio eseguibile produca texture con un loop continuo utilizzando l’approccio descritto basato sul rumore 4D.

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

Valutazione

Stack tecnologico
javascript
Ambito
computer-graphics
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
30/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.