
Original ideas:
Art, perception, computation
New kinetic art. Rich motion via tiny math. Compression is an aspect of art. Mind connects the dots without lines; and also in time - beyond space. Artist's design is spatiotemporal - the dynamics is Intricate - time are space pattern are entangled. High visual complexity from a very short code.
OLD QUESTION: How does the mind make a creature from dots?
Enactivism says perception is something you do, not something that happens to you. 4E cognition puts that into four plain ideas: your mind is embodied in a body, embedded in a situation, enacted through action and perception, and can extend into tools, like a screen. This animation shows it cleanly. The code does not contain a “creature” as an object. Your visual system builds one by tracking coherent motion, binding thousands of dots into one moving agent, and using your expectations about how living things move to keep that agent stable from moment to moment. The “life” you feel is the mind doing its job: turning raw motion into a usable world.
Original p5.JS Processing code:
a=(y=i/790,d=mag(k=(y<8?9+sin(y^9)6:4+cos(y))cos(i+t/4),e=y/3-13)+cos(e+t2+i%24))=>point((q=yk/5(2+sin(d2+y-t4))+80)cos(c=d/4-t/2+i%23)+200,qsin(c)+d9+60) t=0,draw=$=>{t||createCanvas(w=400,w);background(9).stroke(w,116);for(t+=PI/90,i=1e4;i--;)a()}
Translation into Wolfram Language Compile function
exactPointData = Compile[{{t, _Real}},
Table[
Module[{y, k, e, d, q, c, xCoord, yCoord, iVal},
iVal = N[i];
y = iVal/790.0;
e = y/3.0 - 13.0;
k = If[y < 8.0,
9.0 + 6.0 * Sin[BitXor[Floor[y], 9]],
4.0 + Cos[y]
] * Cos[iVal + t/4.0];
d = Sqrt[k^2 + e^2] + Cos[e + t*2.0 + Mod[i, 2]*4.0];
q = (y * k / 5.0) * (2.0 + Sin[d*2.0 + y - t*4.0]) + 80.0;
c = d/4.0 - t/2.0 + Mod[i, 2]*3.0;
xCoord = q * Cos[c] + 200.0;
yCoord = -(q * Sin[c] + d*9.0 + 60.0);
{xCoord, yCoord}
],
{i, 9999, 0, -1}
],
RuntimeOptions -> "Speed"
];
Collage of random frames, rotations, reflections
ImageCollage[Table[
ImageCrop@
ImageRotate[#,RandomChoice[{0,Pi}]]&@
ImageReflect[#,RandomChoice[{Left,Top}]]&@
Rasterize[Graphics[
{Opacity[0.9], PointSize[.002], White,Point[exactPointData[RandomReal[8Pi]]]},
Background -> GrayLevel[0.035], (* background(9) approx 9/255 *)
PlotRange -> {{40, 360}, {-390, -10}},
ImageSize -> 550
]],6],Method->"Rows"]

3D image stack in semitransparent background
Image3D[Rasterize/@frames,ViewPoint->Top,Background->Opacity[.75],ImageSize->550]

3D image stack rotation in fully transparent background
Image3D[Rasterize/@frames,ColorFunction->"XRay",
Background->Black,BoxRatios->{1, 1, 1},SphericalRegion->True]

Animate with Manipulate function:
Manipulate[
Graphics[
{Opacity[0.75], PointSize[.002], White,Point[exactPointData[t]]},
Background -> GrayLevel[0.035],
PlotRange -> {{40, 360}, {-390, -10}},
ImageSize -> 550
],
{{t, 19.35, "Time"}, 19.35, 19.35+ 8 Pi,AnimationRate->.1,Appearance->"Open"}
]

Animated GIF (see top image)
frames=Table[
Graphics[
{Opacity[0.9], PointSize[.002], White,Point[exactPointData[t]]},
Background -> GrayLevel[0.035], (* background(9) approx 9/255 *)
PlotRange -> {{40, 360}, {-390, -10}},
ImageSize -> 550
],
{t, 19.35, 19.35+ 4 Pi, 4 Pi/200.}
];
SetDirectory[NotebookDirectory[]]
Export["wjelly.gif",frames,ImageSize->550,"DisplayDurations"->.03]