diff --git a/site/blender.html b/site/blender.html
index fac892b..f99719f 100644
--- a/site/blender.html
+++ b/site/blender.html
@@ -19,28 +19,28 @@ I have been using Blender since around August 2020 on and off, and did a course
2022-01
youtu.be/AfRJvExamX4
-
+
Alien Tree
2022-01
-
+
Decapod Alien
2022-01
-
+
Crab
2021-10
-
+
Shork Wallpaper
2021-05
This is a wallpaper for the game Shork.
-
+
home
diff --git a/site/lists/portfolio.html b/site/lists/portfolio.html
index ac730dc..1ae217a 100644
--- a/site/lists/portfolio.html
+++ b/site/lists/portfolio.html
@@ -70,25 +70,25 @@ All the below games except for LD45: Mind the Gap
I made together w
2024-08
A shader that can display qr codes of any size, though it requires computing the error correction codes beforehand. Partially because it would be slow to do for every pixel every frame, but mostly because I couldn't find a resource explaining how to do it.
-
+
quine
2024-08
A quine is a program that outputs its own source code. Since shaders don't have text or file outputs, a shader quine must render its own source code instead. This shader contains the font data required to be readable.
-
+
golfed quines
2024-08
Code golf is the art of shortening a program as much as possible while still producing a required behavior. I made a tiny version of the quine, only 2877 bytes large. At the end it does render some random characters, but I still consider it valid. When code golfing, undefined behaviour is part of the fun.
-
+
sunset
2023-02
This is a single fragment shader, which means you can put it on any mesh and it will look the same.
-
+
julia fractal
andriod
@@ -101,11 +101,11 @@ Using the app
+
This 3-row version uses the traditional division of hours, minutes and seconds, just displaying the three numbers in binary.
-
+
raymarching
libgarbage
@@ -117,32 +117,32 @@ libgarbage is my raymarching shader library, with which all the following shader
2023-09
An example scene made for libgarbage, showing most of the primitive shapes available.
-
+
spinny thing
2023-07
-
+
flesh cube
2023-07
-
+
big nut
2023-09
-
+
loops
2024-08
-
+
boxes
2024-08
-
+
cellular automata
game of life
@@ -150,7 +150,7 @@ An example scene made for libgarbage, showing most of the primitive shapes avail
2023-09
See Elementary cellular automaton (Wikipedia).
-
+
WireWorld
Lenia/smoothlife
diff --git a/site/blender_media/alien_tree.png b/site/media/blender/alien_tree.png
similarity index 100%
rename from site/blender_media/alien_tree.png
rename to site/media/blender/alien_tree.png
diff --git a/site/blender_media/alien_tree_preview.png b/site/media/blender/alien_tree_preview.png
similarity index 100%
rename from site/blender_media/alien_tree_preview.png
rename to site/media/blender/alien_tree_preview.png
diff --git a/site/blender_media/crab.png b/site/media/blender/crab.png
similarity index 100%
rename from site/blender_media/crab.png
rename to site/media/blender/crab.png
diff --git a/site/blender_media/crab_preview.png b/site/media/blender/crab_preview.png
similarity index 100%
rename from site/blender_media/crab_preview.png
rename to site/media/blender/crab_preview.png
diff --git a/site/blender_media/critters.mp4 b/site/media/blender/critters.mp4
similarity index 100%
rename from site/blender_media/critters.mp4
rename to site/media/blender/critters.mp4
diff --git a/site/blender_media/decapod_shock.png b/site/media/blender/decapod_shock.png
similarity index 100%
rename from site/blender_media/decapod_shock.png
rename to site/media/blender/decapod_shock.png
diff --git a/site/blender_media/decapod_shock_preview.png b/site/media/blender/decapod_shock_preview.png
similarity index 100%
rename from site/blender_media/decapod_shock_preview.png
rename to site/media/blender/decapod_shock_preview.png
diff --git a/site/blender_media/shork_wallpaper.png b/site/media/blender/shork_wallpaper.png
similarity index 100%
rename from site/blender_media/shork_wallpaper.png
rename to site/media/blender/shork_wallpaper.png
diff --git a/site/blender_media/shork_wallpaper_preview.png b/site/media/blender/shork_wallpaper_preview.png
similarity index 100%
rename from site/blender_media/shork_wallpaper_preview.png
rename to site/media/blender/shork_wallpaper_preview.png
diff --git a/site/media/binary_clock.png b/site/media/shaders/binary_clock.png
similarity index 100%
rename from site/media/binary_clock.png
rename to site/media/shaders/binary_clock.png
diff --git a/site/media/binary_clock_square.png b/site/media/shaders/binary_clock_square.png
similarity index 100%
rename from site/media/binary_clock_square.png
rename to site/media/shaders/binary_clock_square.png
diff --git a/site/media/qr_shader_bit_order.mp4 b/site/media/shaders/qr_shader_bit_order.mp4
similarity index 100%
rename from site/media/qr_shader_bit_order.mp4
rename to site/media/shaders/qr_shader_bit_order.mp4
diff --git a/site/media/rm_big_nut.mp4 b/site/media/shaders/rm_big_nut.mp4
similarity index 100%
rename from site/media/rm_big_nut.mp4
rename to site/media/shaders/rm_big_nut.mp4
diff --git a/site/media/rm_boxes.mp4 b/site/media/shaders/rm_boxes.mp4
similarity index 100%
rename from site/media/rm_boxes.mp4
rename to site/media/shaders/rm_boxes.mp4
diff --git a/site/media/rm_demo_scene.mp4 b/site/media/shaders/rm_demo_scene.mp4
similarity index 100%
rename from site/media/rm_demo_scene.mp4
rename to site/media/shaders/rm_demo_scene.mp4
diff --git a/site/media/rm_flesh_cube.mp4 b/site/media/shaders/rm_flesh_cube.mp4
similarity index 100%
rename from site/media/rm_flesh_cube.mp4
rename to site/media/shaders/rm_flesh_cube.mp4
diff --git a/site/media/rm_looping_loops.mp4 b/site/media/shaders/rm_looping_loops.mp4
similarity index 100%
rename from site/media/rm_looping_loops.mp4
rename to site/media/shaders/rm_looping_loops.mp4
diff --git a/site/media/rm_spinny_thing.mp4 b/site/media/shaders/rm_spinny_thing.mp4
similarity index 100%
rename from site/media/rm_spinny_thing.mp4
rename to site/media/shaders/rm_spinny_thing.mp4
diff --git a/site/media/rule_110.png b/site/media/shaders/rule_110.png
similarity index 100%
rename from site/media/rule_110.png
rename to site/media/shaders/rule_110.png
diff --git a/site/media/shader_quine_198x99.png b/site/media/shaders/shader_quine_198x99.png
similarity index 100%
rename from site/media/shader_quine_198x99.png
rename to site/media/shaders/shader_quine_198x99.png
diff --git a/site/media/shader_quine_2877.png b/site/media/shaders/shader_quine_2877.png
similarity index 100%
rename from site/media/shader_quine_2877.png
rename to site/media/shaders/shader_quine_2877.png
diff --git a/site/media/sunset_shader.png b/site/media/shaders/sunset_shader.png
similarity index 100%
rename from site/media/sunset_shader.png
rename to site/media/shaders/sunset_shader.png
diff --git a/write/blender.md b/write/blender.md
index e6f122c..f63a783 100644
--- a/write/blender.md
+++ b/write/blender.md
@@ -4,23 +4,23 @@ I have been using Blender since around August 2020 on and off, and did a course
## Alien Creatures animation
`2022-01`
[youtu.be/AfRJvExamX4](https://youtu.be/AfRJvExamX4)
-
+
## Alien Tree
`2022-01`
-
+
## Decapod Alien
`2022-01`
-
+
## Crab
`2021-10`
-
+
## Shork Wallpaper
`2021-05`
This is a wallpaper for the game [Shork](https://crispypin.itch.io/ld-48).
-
+
[home](/)
diff --git a/write/lists/portfolio.md b/write/lists/portfolio.md
index 1c8377a..b9b9abb 100644
--- a/write/lists/portfolio.md
+++ b/write/lists/portfolio.md
@@ -42,19 +42,19 @@ All the below games except for `LD45: Mind the Gap` I made together with [Erikbo
### partial QR code
`2024-08`
A shader that can display qr codes of any size, though it requires computing the error correction codes beforehand. Partially because it would be slow to do for every pixel every frame, but mostly because I couldn't find a resource explaining how to do it.
-==video:"/media/qr_shader_bit_order.mp4"
+==video:"/media/shaders/qr_shader_bit_order.mp4"
### quine
`2024-08`
A [quine](https://en.wikipedia.org/wiki/Self-reproducing_program) is a program that outputs its own source code. Since shaders don't have text or file outputs, a shader quine must render its own source code instead. This shader contains the font data required to be readable.
-==image:"/media/shader_quine_198x99.png":"a large square of shader code, being rendered by itself"
+==image:"/media/shaders/shader_quine_198x99.png":"a large square of shader code, being rendered by itself"
### golfed quines
`2024-08`
Code golf is the art of shortening a program as much as possible while still producing a required behavior. I made a tiny version of the quine, only 2877 bytes large. At the end it does render some random characters, but I still consider it valid. When code golfing, undefined behaviour is part of the fun.
-==image:"/media/shader_quine_2877.png":"a smaller wall of text, with a low-resolution font that is just barely readable"
+==image:"/media/shaders/shader_quine_2877.png":"a smaller wall of text, with a low-resolution font that is just barely readable"
### sunset
`2023-02`
This is a single fragment shader, which means you can put it on any mesh and it will look the same.
-==image:"/media/sunset_shader.png":"sunset over a calm ocean, with stars visible in the purple sky"
+==image:"/media/shaders/sunset_shader.png":"sunset over a calm ocean, with stars visible in the purple sky"
### julia fractal
## andriod
`2024-05`
@@ -63,10 +63,10 @@ Using the app [Shader Editor](https://f-droid.org/en/packages/de.markusfisch.and
### binary clock variants
`2024-05`
The 4x4 version divides the day into 2^16 sections, each one about 1.3s long, and displays the number of sections passed since midnight as a binary number.
-==image:"/media/binary_clock_square.png":"a 4x4 grid of circles, some of which are filled"
+==image:"/media/shaders/binary_clock_square.png":"a 4x4 grid of circles, some of which are filled"
This 3-row version uses the traditional division of hours, minutes and seconds, just displaying the three numbers in binary.
-==image:"/media/binary_clock.png":"3 rows of 5, 6 and 6 circles"
+==image:"/media/shaders/binary_clock.png":"3 rows of 5, 6 and 6 circles"
## raymarching
### libgarbage
`2023-07`
@@ -74,28 +74,28 @@ libgarbage is my raymarching shader library, with which all the following shader
### libgarbage demo
`2023-09`
An example scene made for libgarbage, showing most of the primitive shapes available.
-==video:"/media/rm_demo_scene.mp4":"a collection of sdf primitives with a reflective material"
+==video:"/media/shaders/rm_demo_scene.mp4":"a collection of sdf primitives with a reflective material"
### spinny thing
`2023-07`
-==video:"/media/rm_spinny_thing.mp4"
+==video:"/media/shaders/rm_spinny_thing.mp4"
### flesh cube
`2023-07`
-==video:"/media/rm_flesh_cube.mp4":"disgusting pulsating fleshy cube"
+==video:"/media/shaders/rm_flesh_cube.mp4":"disgusting pulsating fleshy cube"
### big nut
`2023-09`
-==video:"/media/rm_big_nut.mp4":"a spinning metallic bolt and nut continually screwing and unscrewing itself"
+==video:"/media/shaders/rm_big_nut.mp4":"a spinning metallic bolt and nut continually screwing and unscrewing itself"
### loops
`2024-08`
-==video:"/media/rm_looping_loops.mp4":"11 rectangular frames moving through each other smoothly":loop=true
+==video:"/media/shaders/rm_looping_loops.mp4":"11 rectangular frames moving through each other smoothly":loop=true
### boxes
`2024-08`
-==video:"/media/rm_boxes.mp4"
+==video:"/media/shaders/rm_boxes.mp4"
## cellular automata
### game of life
### rule 110
`2023-09`
See [Elementary cellular automaton (Wikipedia)](https://en.wikipedia.org/wiki/Elementary_cellular_automaton).
-==image:"/media/rule_110.png":"elementary cellular automata 110"
+==image:"/media/shaders/rule_110.png":"elementary cellular automata 110"
### WireWorld
### Lenia/smoothlife
## godot