3 ms·
Can you explain your process of completing this? How did you do this without Three.js?
by homanchou 10y ago
Can you explain your process of completing this? How did you do this without Three.js?
- chinedufn 10y agoSo the process roughly boiled down to: 1. Figure out what I wanted the input and output to be for the API. Write that down. 2. Write and implement tests against that desired input and output. So at this point the `skeletal-animation-system` API is ready. Time for the demo 3. Create the demo. The main pieces of the demo are: A vertex shader that positions each vertex based on up to four bones that have a certain percentage of influence on that vertex. That shader looks something like this -> https://github.com/chinedufn/load-collada-dae/blob/master/src/shader/generate-vertex-shader.js https://github.com/chinedufn/load-collada-dae/blob/master/sr... A parser to get the mesh and bone data from a collada file -> https://github.com/chinedufn/collada-dae-parser https://github.com/chinedufn/collada-dae-parser --- I don't have much of a write up right now of how this works.. But if you'd like to get a better sense you might look through the demo code. The entry point is here -> https://github.com/chinedufn/skeletal-animation-system/blob/master/demo/browser.js https://github.com/chinedufn/skeletal-animation-system/blob/... Alternatively you can run the demo locally and play around with it: ``` git clone https://github.com/chinedufn/skeletal-animation-system https://github.com/chinedufn/skeletal-animation-system cd skeletal-animation-system npm install npm run demo ``` Really wish I could point you to something more in depth, sorry!