Did some more work on the raycaster last night. Got another huge speed improvement now that my draw vertical line function doesn't just call the pixel drawing function for every pixel.
The each pixel draw call would also call this per pixel and I am sure that was not helping (actually I know it was not helping since I tested it again per pixel draw lol):
outp(0x03C4, 0x02);
outp(0x03C5, 1 << (x&3));
The raycaster is really fast in DOSBox at the moment and it is very fast on the 486.
reimplementing the planet for the sake of education
plus, it's a really cool aesthetic, writing code for open watcom and running your stuff in legit 486 hardware--just like so many classic game developers did
there's still a long way to go, but actually having a renderer working, even if slowly, is a massive step towards something pretty damn cool imo
Oh hey, turned out my raycaster had a huge bug (forgot to cast a value as float). I also added some code so North/South walls have a different color from East/West and it makes the raycaster look way better.
I also added text drawing functionality in Mode Y, but I don't know if my FPS counter is working correctly, as I just threw it together quickly. (I will be implementing fixed point math instead of floats in the future).
kink art, spanking
it's amazing how much of a difference a little shading can make
i've been struggling trying to make a background for this for a while now, and i'm almost suspecting i might actually be happy enough with this
that could also be cognitive dissonance though, oops
oh hi! i do computers, and sometimes draw stuff~ i like lo-fi things and cute aesthetics!
i also probably like you
(also, tagged #abdl ahead, soooo 🔞)