Foon → Ludum Dare Explorer → MiniLD → MiniLD 45 → Deepstone

Deepstone

By nuclear

Comments

optimus6128 2013-09-23 06:48

Well, that looks quite cool graphically!

zzforrest 2013-09-23 10:28

pretty cool, but there's something wrong with the renderer, it's like the models start skewing when they get to the edge of the screen,

nuclear 2013-09-23 16:01

zzForrest: Thanks!

The weirdness is just due to the crappy affine texture mapping rasterizer I've written I think. It doesn't do perspective-correct interpolation (u/w, v/w) but rather linearly interpolates texture coordinates over the area of each polygon, which makes textures swim around when looking them at different angles :) It could be fixed by writting a proper rasterizer, but no time :)

goerp 2013-09-23 17:11

Not a game yet, but pretty impressive anyway!

legatus 2013-09-23 18:10

gave me a warm retro feel, looks cool indeed

tomc 2013-09-23 21:11

Wow very impressive. Did you do all of that in the weekend?

nuclear 2013-09-23 22:19

tomc: Not exactly, it's about a two weekends worth of work really. I started with some code I've written in about a weekend, a year ago for a simpler DOS 3D hack ( see: http://www.youtube.com/watch?v=pMHwQF_cDtI ), then this weekend I did:

- port from 16bit Borland C code, to 32bit Watcom C.
- rewrote the polygon rasterizer.
- implemented 3D polygon clipping, because without it I can only show objects in front of the camera (as I had in the video above) and I needed to be able to walk inside the 3D world for this.
- implemented the interrupt-based keyboard input handler to be able to walk first-person (the earlier code only had mouse controls to rotate 3D objects).
- ... and was fixing bugs all over the place :)

Also some other stuff that I reused was the PIT8254 timer code from my home-brew operating system kernel, which I had ported to DOS some time ago for another program, and some simple OBJ model loading code I had written at some point.