summaryrefslogtreecommitdiffstats
path: root/generate_animations.sh
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2022-09-27 23:04:34 -0700
committeryum <yumfood@airmail.cc>2022-09-28 16:54:01 -0700
commit98c6d47d73abfad32eb32520531c887d34bb31ed (patch)
treed06d5184f1f92c35e8031f31c515d44a8063ee53 /generate_animations.sh
parentb31daf071a1ccb0dd45ef78a96a8c1213b108858 (diff)
big code dump
Summary: added generator for animations and FX layer. * add generate_animations.sh * generates an animation for every cell (14*6=72) and every letter (60); 72*60 = 4212 total animations * add generate_fx.py * seems to work in-game * drives every parameter needed * add {group,cell}_names.txt * name of every group & cell parameter * the STT has 72 individual character slots called cells. They are grouped into 4-character groups to save on parameter bandwidth. Thus each slot may be indexed with 8 bits. * add SetLetters.cs * this thingy looks at each group parameter and uses it to set each cell parameter. The generated fx layer hooks the script in. * check in SDK-generated assets as references until code generators are complete
Diffstat (limited to 'generate_animations.sh')
-rw-r--r--generate_animations.sh31
1 files changed, 31 insertions, 0 deletions
diff --git a/generate_animations.sh b/generate_animations.sh
new file mode 100644
index 0000000..b3e6e78
--- /dev/null
+++ b/generate_animations.sh
@@ -0,0 +1,31 @@
+#!/usr/bin/env bash
+
+# One animation per slot, per letter.
+# For upper-lower + a few symbols, this is roughly
+# 3 * 12 * 60 \approx 2000 animations.
+# Hopefully we don't hit some limit, lmao
+
+set -o errexit
+set -o pipefail
+
+[ -d generated/animations ] && rm -rf generated || true
+mkdir -p generated/animations
+
+for row in `seq 0 2`; do
+ ROW_PADDED=$(printf '%02d' $row)
+ for col in `seq 0 13`; do
+ COL_PADDED=$(printf '%02d' $col)
+ LETTER_SHADER_PARAM=_Letter_Row${ROW_PADDED}_Col${COL_PADDED}
+ for letter in `seq 0 60`; do
+ LETTER_PADDED=$(printf '%02d' $letter)
+ ANIM_NAME=${LETTER_SHADER_PARAM}_Letter${LETTER_PADDED}
+ FILENAME=generated/animations/${ANIM_NAME}.anim
+ cat template.anim | \
+ sed \
+ -e "s/%LETTER_VALUE%/$letter/g" \
+ -e "s/%LETTER_SHADER_PARAM%/$LETTER_SHADER_PARAM/g" \
+ -e "s/%ANIMATION_NAME%/$ANIM_NAME/g" \
+ > $FILENAME
+ done
+ done
+done