summaryrefslogtreecommitdiff
path: root/design.md
diff options
context:
space:
mode:
authorjacopograndi <jacopo.grandi@outlook.it>2023-05-14 00:02:58 +0200
committerjacopograndi <jacopo.grandi@outlook.it>2023-05-14 00:02:58 +0200
commite71add5ae10121f7a821456e7f6960ea96210131 (patch)
treebb988d444f9ad0d7dcbf9388067ab64facb7a94b /design.md
parentf2019713decb9dd1b486e4576eccb1bbac2c1d61 (diff)
wgsl shader testingHEADmain
Diffstat (limited to 'design.md')
-rw-r--r--design.md47
1 files changed, 41 insertions, 6 deletions
diff --git a/design.md b/design.md
index 21b7136..fad240f 100644
--- a/design.md
+++ b/design.md
@@ -1,12 +1,47 @@
-terrorhedron
-+ conway polyhedral notation
-+ editable voxel map
-+ deterministic multiplayer
+# terrorhedron, but
+- conway polyhedral notation leading to different enemy/turret design and balance
+- editable voxel map
+- deterministic multiplayer
-enemies are shapes:
-[ ] generate a table with all shapes generated from T (tetrahedron)
+## enemies are shapes:
+- [x] generate a table with all shapes generated from T (tetrahedron)
with at most 5 operators
between s (snub), k (kis), a (ambo), d (dual)
in canonical form.
provide the vertex number, time needed
to see if it's viable to generate them on the fly.
+
+-> it's not viable to generate on the fly any shape using the topological operators.
+they act only on the topology, which leaves some degrees of freedom.
+
+- [x] evaluate pregenerated options
+ - use the 5 platonic, 13 archimedean and their dual the 13 catalans -> 31 shapes.
+ - precalc all variations of "skad" up to depth n=3: 84, n=4: 340, n=5: 1364.
+
+-> i'll stick to the 31 for now
+
+## reference of the 31=(13+13+5) shapes.
+T, kT, dkT,
+aT, kaT, dkaT, aaT, daaT, kdaaT, dkdaaT, aaaT, daaaT, daT, kdaT, dkdaT, saT, dsaT
+sT, ksT, dksT, asT, dasT, kdasT, dkdasT, aasT, daasT, dsT, kdsT, dkdsT, ssT, dssT
+
+### properties of all available shapes up to depth n
+contain duplicates, dddT = ddT = dT = T or saT = sdaT
+contain canonicalization artifacts
+
+- [ ] shape shader
+ - used to indicate both the topology and a variant
+ - used only to indicate the topology
+
+shader variants: striped, dotted, translucient, negative, burning, wireframe
+
+## enemies
+### operator effects
+
+they stack multiplicativly.
+
+- T: no effect
+- k: +20% speed
+- a: +3 life, 2x damage
+- d: -2 life, duplicates on death (only when losing the d)
+- s: multiplies life by 3, speed -20%