- particle movement along svg spline paths
- spline discretization (for performance reasons)
- interpolation between discretized points (to counteract low sample rates and reduce file size)
- smoothed mouse and touch interactive effects
- responsive
- retine display optimisation
- ES6 modules
A simple webserver. I used the npm http-server which can be installed via npm install -g http-server.
The first step is to discretized svg file, since this doesn't need to be done in realtime.
In discretizer/discretize.js set the path to your svg file and adjust the parameters to your needs and your SVG sizing(!).
cd discretizer
http-serverand open it in your browser. If everythink worked fine you will see an array of numbers, which is the discretized represenations of your SVG file. Save the output in a way making it accessable for the app/main.js (e.g. create a variable or save it in a separate file like I did with app/svg_desktop.js for example).
cd ..
cd app
http-server