In this blog post we will cover some of the basics of the Barnes Hut algorithm. This is completely new to me, it is not an algorithm I’ve used/studied before (and I am by no means an astrophysicist). Nonetheless it has piqued my interest so I have decided to write about it. In this blog I will be talking about 2 dimensions unless otherwise stated, this just makes the resulting code run a little quicker and output easier to visualise. Modifying the 2d code to be 3d (or even higher dimension) requires only minor revisions.
This site contains many samples and prototypes that I have developed. All the code for the samples are available on bitbucket and people are free to do with it what they will. Ideally its best if you use the latest version of the Chrome browser, I tend to use the latest available APIs and features as I prototype and learn new subjects.
* 2D Prototypes
* 3D Fungi Prototypes
* SDF / Ray Marching Prototypes
* Three.js Prototypes
* 3D Shader Prototypes
* UI Web Components
* Misc
These are articles about the techniques I develop and lessons I learnt while toying or working with computer graphics. Most of it is self-taught and there's lots of reinventing the wheel (which I recommend) but also some innovative and new discoveries that often times are not documented anywhere else (and if any of this content becomes part of your paper or the center of your PhD thesis, I feel it'd be fair to mention this website).
Spheres are nice and all, but there comes a time when more complex shapes are needed. One popular algorithm for testing collisions is the Gilbert–Johnson–Keerthi algorithm, or GJK for short. With it we can detect collisions between any two convex polygons.
Check out the full article: https://blog.winter.dev/2020/gjk-algorithm/
In this video we will take an in depth look at the fast inverse square root and see where the mysterious number 0x5f3759df comes from. This algorithm became famous after id Software open sourced the engine for Quake III. On the way we will also learn about floating point numbers and newton's method.
M. Müller, J. Bender, N. Chentanez, и M. Macklin. Proceedings of the 9th International Conference on Motion in Games, стр. 55--60. New York, NY, USA, ACM, (2016)