Preskočiť na obsah
Ákos Kappel
Jazyk: sk
Téma
Svetlé
Tmavé

SketchBook

21 malých skíc v prehliadači: klasické hry, simulácie, fraktály a efekty na plátne.

Úvodná stránka SketchBook s nadpisom z častíc a náhľadmi projektov

O projekte

Malé projekty, ktoré som napísal v roku 2021, keď som sa učil JavaScript, väčšinou podľa tutoriálov. Neskôr som opravil ich chyby, dal im spoločný dizajn, ktorý funguje aj na mobile, a pridal deväť nových.

Čo si môžete vyskúšať

  • Hry: Snake, Pong proti počítaču alebo kamarátovi, piškvorky s neporaziteľným botom, Mínolovka, 2048
  • Simulácie a algoritmy: Game of Life, kŕdeľ boidov, genetický algoritmus, quadtree, generovanie a riešenie bludiska, triedenie, Langtonov mravec, reakcia a difúzia
  • Matematika: Mandelbrotova množina s priblížením, Fourierove rady, chaos game, Barnsleyho papraď, fraktálové stromy a dvojité kyvadlo
  • Efekty, ktoré reagujú na kurzor alebo dotyk, dva z nich zostavené z vlastného nahraného obrázka
  • Každý projekt má krátke vysvetlenie, ako funguje
  • Úvodná stránka s filtrom podľa kategórií a náhľadom každého projektu

Ako to funguje

  • Čisté HTML, CSS a JavaScript bez zostavovania, hostované na GitHub Pages
  • Riešiče bludiska a triediace algoritmy sú napísané ako generátory, ktoré sa po každom kroku zastavia, takže animácia ich ukáže krok po kroku
  • Efekty s veľa pixelmi zapisujú priamo do obrazových bufferov a Mandelbrotova množina sa vykresľuje po niekoľkých riadkoch na snímku, aby stránka reagovala
  • Dvojité kyvadlo sa počíta metódou RK4 a niekoľko kópií začína 0,001° od seba, aby bolo vidno, ako rýchlo sa rozídu
  • Reakcia a difúzia vychádza z Gray-Scottovho modelu

Zoznam zmien

  • p5.js 1.3 na 1.11
  • Jeden spoločný tmavý dizajn
  • Plátna, ktoré sa prispôsobia každej obrazovke a fungujú s dotykom
  • Asi tucet opráv chýb
  • Deväť nových projektov
Kedy
2021 – 2026
Typ
Osobný
Verzie
  • p5.js 1.11
Technológie
  • JavaScript
  • p5.js
  • Canvas
  • HTML
  • CSS
  • GitHub Pages
Modré špirály na okraji Mandelbrotovej množiny
Mandelbrotova množina: kliknutím, ťahaním a skrolovaním sa dá fraktál približovať.
Vygenerované bludisko s farebne označenými preskúmanými políčkami a najkratšou cestou zelenou
Bludisko: generované krok po kroku a potom vyriešené prehľadávaním do šírky, do hĺbky alebo A*.
Farebné plynulé čiary nakreslené časticami, ktoré sledujú Perlinov šum
Flow Field: tisíce častíc, ktoré sledujú Perlinov šum a dajú sa rozvíriť kurzorom.
Žiariace zelené prstence a bunky vytvorené simuláciou reakcie a difúzie
Reakcia a difúzia: vzory, ktoré rastú podľa Gray-Scottovho modelu; kreslením sa pridáva chemikália.
Veľa farebných dvojitých kyvadiel so spletenými stopami
Dvojité kyvadlo: kópie, ktoré začnú 0,001° od seba, skončia úplne inde.
Stĺpce triedené algoritmom quicksort s počítadlom porovnaní a zápisov
Triedenie: šesť algoritmov animovaných krok po kroku, s počítaním porovnaní a zápisov.

1 z 6

Modré špirály na okraji Mandelbrotovej množiny

Mandelbrotova množina: kliknutím, ťahaním a skrolovaním sa dá fraktál približovať.