Unfinished Robot Game
A while back now, I set myself a goal to see if I could create a basic third person, physics based platformer prototype using Three.js. And, after a few different iterations, I ended up here, and I first published ‘Unfinished Robot Game’ around 2023. The player can basically move around, walk, run, and jump etc, and push the dynamic objects. I also included gamepad and mobile / touch support.
I’m generally happy with the results, however there were a few things that I’m not happy with, and that I didn’t end up resolving. I’m currently in the process of completely rebuilding this system.
I used Cannon-es for the physics, which was really nice and easy to work with, however it is relatively old, unsupported, and is generally regarded to be on the slow / less performant side. The only main problem I had with it was that sometimes the player passes into the dynamic 3D objects, like the colliders aren’t working properly 😔. I also built the player component as a basic rigid body element, rather than using your more typical character controller system. This has some advantages in the way the player moves and interacts with objects, but is also disadvantageous in terms of the player moving up stairs and sticking to slopes etc. Another thing that I’m really not happy with is my camera controls on mobile. - I’ve recently experimented with ways to hopefully better handle this in my Inner Space, and Player Controller projects.
Otherwise please don’t hesitate to offer any feedback or simply reach out if you would like to touch base about any of this stuff.
* You can also use the left and right arrow keys for the next / previous navigation, and also in most of the three.js demos when they are launched.