Vous vous souvenez de Drew? non ! alors jeter un oeil sur cette vieille actu. Il travaillait sur l’HyperNeoGeo64, comme Haze, à la différence qu’il bossait sur la partie 3D. Depuis plus rien, jusqu’à aujourd’hui du moins…en effet Andrew revient et nous montre de nouveaux screenshots de son travail et apparemment ça à bien avancé 🙂

Going back to my roots, I’ve come dangerously close to implementing the ‘linescroll’ feature of the hng64. This enables the floor in fatal fury wild ambition! Pay close attention to the recognizable features on the floor (like the stars) as they’re foreshortened by perspective effects.

Cliquez pour agrandir

(0,0) to (2048,0), then a line from (0,1) to (2048,1), then one from (0,2) to (2048,2), and so on. If, instead, you wanted something interesting, you’d ask for lines calculated based on a perspective projection into the tilemap. You can then rotate the sample-lines to make the floor appear as it’s rotating, or scale the sample-line lengths to make it look like the floor’s moving further away.

Quite spiffy to be sure, but I can’t figure out anything this would be used for except rendering planes… To give the hardware designers credit, it may have been necessary to include this specialized ‘textured plane-drawer’ since the hng64 polygon rasterizer is probably very slow when drawing large triangles. The rasterizer probably also messes up the textures pretty badly on large polys because of an assumed lack of perspective-correct texture mapping (?). Anyways, hopefully as we improve the emulation further, we’ll see how other software uses it.

The implementation isn’t complete yet – I’m ignoring 32 bits per [x,y] coordinate and my implementation fails miserably when the camera points down. I do think I’m onto something though, because when the players move around the groundplane moves and rotates correctly – it’s just a matter of figuring out the finishing touches.

Oh, and in related news, I think I’ve figured out which video register controls the animation of the background tilemaps, but lack skill necessary to hook it up properly… Still learnin’ :)!

Site Officiel