Skip to content

TristanCacqueray/demo-render

Repository files navigation

This repository contains standalone program to render digital art.

Checkout git commit on update to get a working reproducer, or look at demo-code reference implementation.

The duck set fractal, from this article

cat crab petal siamois smiley

Flower seeds distribution representation based on this video

flower-seeds flower-golden

flower-seeds-gl.py flower-seeds flower-seeds flower-seeds

Multiplication table on a circle from this video

multiplication on a circle

recaman.py melody representation on a circle

recaman

The lyapunov exponent of population growth using markus function to change the rate based on a binary seed, from wikipedia.

AB

Sandpile fractal, from this video

sandpile

Midi/Spectrogram based animation of iterated complex function fractal.

The general design is that each frame undergoes:

  • Input procedures to collect raw data such as audio or midi events.
  • Modulations procedures to normalize the raw data.
  • Scene procedures to transform the modulation into rendering parameters.
  • Output procedures to generate visualization.

This design evolved over time, here are some interesting milestones:

  • Using hylang is more ergonomic to write scenes:

  • Fragment shader can be written in the host language, mostly for elegance, hy2glsl example.

  • The modulation amount can be pre-computed so that for a scene, a modulation can be expressed as:

    • (scene "intro" end-value (move-seed 0 rhode)) where the amount of "rhode" will match the end value target,
    • Instead of (update "trap1_offset" (* rhode 1e-1)) where the amount of "rhode" is picked arbritarily without an end value target.

livet-nediser.hy

livet-nediser livet-nediser livet-nediser

orbital3.hy

orbital3 orbital3 orbital3 orbital3

marble-menger.hy

marble-menger marble-menger marble-menger marble-menger

menger.py

menger menger menger menger

underwater-fractal-creature.py

underwater-fractal-creature underwater-fractal-creature underwater-fractal-creature underwater-fractal-creature underwater-fractal-creature

bulb.py

bulb bulb bulb bulb

maintenance2.py

maintenance2 maintenance2 maintenance2 maintenance2 maintenance2

duna2.py

duna2 duna2 duna2 duna2

mozaic fall.py

mozaic fall mozaic fall mozaic fall mozaic fall

kalygg.py

kalygg kalygg kalygg

rokano.py

rokano rokano rokano

rosko.py

rosko rosko rosko

memosp2.py

memosp2 memosp2 memosp2 memosp2

oldchords.py

oldchords oldchords oldchords oldchords

anvil.py

anvil anvil anvil anvil

EoJ.py

EoJ EoJ EoJ EoJ

inline.py

inline inline inline inline

notre.py

notre notre notre notre

dafP1.py

dafP1 dafP1 dafP1

comptine.py

comptine comptine

weightless-morning.py

weightless-morning weightless-morning weightless-morning weightless-morning

maintenance.py

maintenance maintenance maintenance maintenance

siouze.py

siouze siouze

waldo.py

waldo

buttons.py

buttons buttons buttons buttons

acidula-beat.py

acidula-beat acidula-beat acidula-beat

fatou-v2.py

fatou-v2

lmgg.py

lmgg

lmgg2.py

lmgg2

lmgg3.py

lmgg3 lmgg3

gobansan.py

gobansan

profondeur.py

profondeur

ggb.py

ggb

duna.py

duna

fatou.py

fatou

dirty-muffin.py

dirty-muffin

tounex.py

tounex

lm95p1.py

lm95p1

FFT and frequency band visualisation.

spectrogram

Releases

No releases published

Packages

No packages published