4 ms·
Thank you! I worked on this We start with a point cloud generated from the model which has color and normal and render each particle as a little hexagon with m
by haxiomic 3y ago
Thank you! I worked on this
We start with a point cloud generated from the model which has color and normal and render each particle as a little hexagon with metallic and iridescent shading. Each particle is given a position and velocity in a texture. Each frame we do a physics step that writes to these textures with fragment shaders. We sum the forces into the velocity texture:
- mouse interaction force
- flow force from time varying curl noise
- spring force to return to original position
- air resistance
last we do a euler step to update position texture.
There’s masses of free parameters to control forces and materials, the animation is created by changing parameters per-particle over time
Tech: three.js, GLSL & TypeScript
Tip: Left click to push apart, right click to pull together!
- HanClinto 3y agoThis is really awesome -- well done!