This is another contrived post to test out my interactive coding scripts, and also to test making a d3 tree graph. While this post is probably not going to be enlightening, I hope it is somewhat entertaining. One of my favorite data structures is the binary tree. It’s not the fastest at everything, but it does most things you’d need, and it does them reasonably quickly. If you have a list of things that you need to sort, search, and also insert new items into, a binary tree is not a bad thing to consider.
I’ve recently taken my hand made type definitions for WebXR (for use in my Mesh Game Engine) and submitted them to DefinitelyTyped (DT). Lazily, I hadn’t switched the game engine over to using the DT version. The definitions just got their first update from a new PR so it seemed like the perfect time to swap over. There were a number of gotchas in doing so, so I thought I’d post about how I got it working and some pitfalls you might run into if you’re into this kind of thing.
As you might know from some posts on here, I’ve been getting into 3D programming - AR / VR / spatial computing as well as dabbling in machine learning and parallel algorithms using GPUs. For the past few years, I’ve been doing this on hardware from like 2011. I needed an upgrade, and I couldn’t find an offering from Apple that fit the bill. So I’ve had to byte the bullet and leave the Apple ecosystem for the first time since… what… 2003.
NOTE This is a work in progress. Demo links on here depend a lot on your system and video card. But give them a go - you’ll know if they work. I’ve finished some of the key features of my little 3d engine. The list includes Basic Levels, sprites, sounds, and basic interactions between objects. Enough features to build a small game - which, arguably, is the hardest part. I’ve started cutting down my original idea into some much smaller and far less ambitious.
Anyone who knows me knows I wont shut up about this “game engine thing” I am working on. I admit it, I’ve been a bit obsessed. The reason I am obsessed, I think, is because I get to solve problems that I’ve never really had to solve before. This weekend, for example, I need to make some sort of grid system (or binary space partition) to limit the number of objects I am tossing around in the engine - this kind of stuff never comes up in day to day life!
NOTE Demo links on here depend a lot on your system and video card. For example, Firefox 60 on my desktop doesn’t work, but on my laptop it does. Chrome works on my desktop, but not my laptop. And Safari, well, yeah. But give them a go - you’ll know if they work. I’ve been obsessed for the past few days trying to get my little 3d game engine closer to useful.