I've fixed the horrible near plane clipping issues, added very basic collision resolution (literally 'snap to the top of the highest floor') and given him a drop shadow.
I have implemented collision detection and resolution with the geometry mesh including wall and floor sliding...
...all without a single division operation (they're slow).
I spent ages trying to fix a mystery unsolid floor bug only to realise that the triangle frustum check was overflowing internally. Fixed-point maths sucks, makes me realise how painless and elegant floating point is in comparison.
Are there any 3D modelling gurus that feel like taking a stab at an ultra low-poly Mario? I'm abysmal with Blender. Here's my attempt at simplifying the existing model, down to 172 polygons. Ideally, I'd like to get below 100.
Texture mapping, mipmaps, and transparency support for today. Oh, and the game can now switch between stages.
I'm surprised by how performant these ended up being. Texture mapping roughly doubles the cost of the rasteriser inner loop but nothing else, mipmapping is basically free, and transparency support - after a lot of prodding - compiles down to a single assembly instruction in the inner loop.
That said, none of them are free so the game is gradually slowing down despite my best efforts.
Found some more time to work on this over the past week. The rasteriser is now significantly faster, the physics code is more rugged, I added a proper player model, and am now experimenting with some basic animations. It's starting to feel like... a thing?
@eniko If I find the energy and time, I'd like to do that. There are some really neat tricks that went into making it all run at somewhat playable speeds. Video or blog post?
Add comment