From 02c6802f86149a3e67482979b7008f4d9921737e Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Mon, 26 Apr 2021 10:25:36 -0500 Subject: [PATCH] starting work on particle system simulation --- build.sh | 0 site/sand_toy.wasm | Bin 32370 -> 33417 bytes src/simulation.onyx | 17 +++++++++++++++++ 3 files changed, 17 insertions(+) mode change 100644 => 100755 build.sh diff --git a/build.sh b/build.sh old mode 100644 new mode 100755 diff --git a/site/sand_toy.wasm b/site/sand_toy.wasm index 9685ec09da5258d7459bd1638284a98f16447000..1a9832b22846f2c382d38df1cf028e066532250e 100644 GIT binary patch delta 11032 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
rRn9lmH8^{88L#gw+^o^`-7C8dHM*$5BJxU*uSC VwOx+ZgJ=