diff --git a/site/lists/portfolio.html b/site/lists/portfolio.html
index b2f2929..ac730dc 100644
--- a/site/lists/portfolio.html
+++ b/site/lists/portfolio.html
@@ -13,14 +13,14 @@
Portfolio
-Hi this is a non-exhaustive list of my personal projects. It appears I like making things with computers.
+Hi, this is a non-exhaustive list of my personal projects. It appears I like making things with computers. The dates listed are the last time any significant change was made, for projects that spanned several months.
hardware
leko pona
2022-08
git.crispypin.cc/CrispyPin/leko-pona
-
+
ch32v003 oled board
@@ -29,17 +29,18 @@ project files: git.crispy
bad apple
2024-04
-git.crispypin.cc/CrispyPin/bad-apple/
-https://youtu.be/G0eonL14tCQ
+source: git.crispypin.cc/CrispyPin/bad-apple/
+https://youtu.be/G0eonL14tCQ
+
Conways Game of Life
2024-04
-
+
Runner game
2024-04
-
+
rotary encoder keyboard
jam games
@@ -54,7 +55,7 @@ All the below games except for LD45: Mind the Gap
I made together w
2022-04
crispypin.itch.io/ld-50
github.com/CrispyPin/ld-50
-
+
LD49: Shork Inc
LD48: Shork
@@ -66,25 +67,91 @@ All the below games except for LD45: Mind the Gap
I made together w
LD42: Forklift Simulator
shaders
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.
+
+
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
+
+2024-05
+source: git.crispypin.cc/CrispyPin/android-shaders
+Using the app Shader Editor, I made some shaders for my phones' wallpaper.
+
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.
+
+
+
+This 3-row version uses the traditional division of hours, minutes and seconds, just displaying the three numbers in binary.
+
+
raymarching
libgarbage
+
+2023-07
+libgarbage is my raymarching shader library, with which all the following shaders are made with. It doesn't have its own repository right now, but can be found in git.crispypin.cc/CrispyPin/cvr-props
+
libgarbage demo
-spinny demo
+
+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
rule 110
+
+2023-09
+See Elementary cellular automaton (Wikipedia).
+
+
WireWorld
Lenia/smoothlife
godot
@@ -102,9 +169,8 @@ All the below games except for LD45: Mind the Gap
I made together w
OVR Utils
sinpin-vr
steamvr_status
-creative coding
-snad
Silly
+snad
worm lang
advent of code 2023 day 1 and 4 in brainfuck
asetniop emulator for x11
diff --git a/site/media/binary_clock.png b/site/media/binary_clock.png
new file mode 100644
index 0000000..4b8a439
Binary files /dev/null and b/site/media/binary_clock.png differ
diff --git a/site/media/binary_clock_square.png b/site/media/binary_clock_square.png
new file mode 100644
index 0000000..27b494c
Binary files /dev/null and b/site/media/binary_clock_square.png differ
diff --git a/site/media/rm_big_nut.mp4 b/site/media/rm_big_nut.mp4
new file mode 100644
index 0000000..1a4139f
Binary files /dev/null and b/site/media/rm_big_nut.mp4 differ
diff --git a/site/media/rm_demo_scene.mp4 b/site/media/rm_demo_scene.mp4
new file mode 100644
index 0000000..8b6ffb0
Binary files /dev/null and b/site/media/rm_demo_scene.mp4 differ
diff --git a/site/media/rm_flesh_cube.mp4 b/site/media/rm_flesh_cube.mp4
new file mode 100644
index 0000000..2da2ada
Binary files /dev/null and b/site/media/rm_flesh_cube.mp4 differ
diff --git a/site/media/rm_looping_loops.mp4 b/site/media/rm_looping_loops.mp4
index 4cc5ae3..de02a55 100644
Binary files a/site/media/rm_looping_loops.mp4 and b/site/media/rm_looping_loops.mp4 differ
diff --git a/site/media/rm_spinny_thing.mp4 b/site/media/rm_spinny_thing.mp4
new file mode 100644
index 0000000..4c91428
Binary files /dev/null and b/site/media/rm_spinny_thing.mp4 differ
diff --git a/site/media/rule_110.png b/site/media/rule_110.png
new file mode 100644
index 0000000..24cc241
Binary files /dev/null and b/site/media/rule_110.png differ
diff --git a/site/media/shader_quine_198x99.png b/site/media/shader_quine_198x99.png
new file mode 100644
index 0000000..13a97e5
Binary files /dev/null and b/site/media/shader_quine_198x99.png differ
diff --git a/site/media/shader_quine_2877.png b/site/media/shader_quine_2877.png
new file mode 100644
index 0000000..4a58272
Binary files /dev/null and b/site/media/shader_quine_2877.png differ
diff --git a/site/media/sunset_shader.png b/site/media/sunset_shader.png
new file mode 100644
index 0000000..aaa69f6
Binary files /dev/null and b/site/media/sunset_shader.png differ
diff --git a/write/lists/portfolio.md b/write/lists/portfolio.md
index 84f5f18..1c8377a 100644
--- a/write/lists/portfolio.md
+++ b/write/lists/portfolio.md
@@ -1,5 +1,5 @@
# Portfolio
-Hi this is a non-exhaustive list of my personal projects. It appears I like making things with computers.
+Hi, this is a non-exhaustive list of my personal projects. It appears I like making things with computers. The dates listed are the last time any significant change was made, for projects that spanned several months.
# hardware
### leko pona
@@ -11,7 +11,7 @@ Hi this is a non-exhaustive list of my personal projects. It appears I like maki
project files: [git.crispypin.cc/CrispyPin/ch32_oled](https://git.crispypin.cc/CrispyPin/ch32_oled)
### bad apple
`2024-04`
-[git.crispypin.cc/CrispyPin/bad-apple/](https://git.crispypin.cc/CrispyPin/bad-apple/)
+source: [git.crispypin.cc/CrispyPin/bad-apple/](https://git.crispypin.cc/CrispyPin/bad-apple/)
==youtube:G0eonL14tCQ
### Conways Game of Life
`2024-04`
@@ -40,26 +40,62 @@ All the below games except for `LD45: Mind the Gap` I made together with [Erikbo
### LD42: Forklift Simulator
# shaders
### 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"
### 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"
### 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"
### 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"
### julia fractal
## andriod
+`2024-05`
+source: [git.crispypin.cc/CrispyPin/android-shaders](https://git.crispypin.cc/CrispyPin/android-shaders)
+Using the app [Shader Editor](https://f-droid.org/en/packages/de.markusfisch.android.shadereditor/), I made some shaders for my phones' wallpaper.
### 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"
+
+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"
## raymarching
### libgarbage
+`2023-07`
+libgarbage is my raymarching shader library, with which all the following shaders are made with. It doesn't have its own repository right now, but can be found in [git.crispypin.cc/CrispyPin/cvr-props](https://git.crispypin.cc/CrispyPin/cvr-props/src/branch/main/Assets/raymarched/lib)
### libgarbage demo
-### spinny 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"
+### spinny thing
+`2023-07`
+==video:"/media/rm_spinny_thing.mp4"
### flesh cube
+`2023-07`
+==video:"/media/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"
### loops
+`2024-08`
==video:"/media/rm_looping_loops.mp4":"11 rectangular frames moving through each other smoothly":loop=true
### boxes
+`2024-08`
==video:"/media/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"
### WireWorld
### Lenia/smoothlife
## godot
@@ -77,9 +113,8 @@ All the below games except for `LD45: Mind the Gap` I made together with [Erikbo
### OVR Utils
### sinpin-vr
### steamvr_status
-# creative coding
-### snad
# Silly
+### snad
### worm lang
### advent of code 2023 day 1 and 4 in brainfuck
### asetniop emulator for x11