Many new changes have been made since the last post:
Animated texture support, emissive flats, better flat scaling and rendering, dynamic light sources attached to light flats, proper texture set switching based on region (yes this is required for dungeons too), greatly improved collision detection, working doors and first pass implementation of proper enemy and treasure placement. All the enemies show up as rats right now, including one giant rat but will be the proper enemies next time. The random treasure works correctly.
The lighting has been tweaked from the player, now there is an upclose light as well as a longer distance fog-like attenuation. Unlike Daggerfall, however, the lighting doesn’t fade completely to black in the distance and light sources still light up the environment no matter how far away they are. All the dynamic lights still need to be tweaked but pulse/flicker like in Daggerfall. They are not quite standard point lights, there is the standard (N.L) contribution, but even surfaces facing away from the light receive a little lighting if they are close enough. All lighting is done per-pixel similar to the original game.
The proper texture swapping has done wonders for making the dungeon look like Privateer’s Hold, it really helps a lot as you can see from the screenshots. The flats are also about the correct size and positioned almost correctly, some more tweaking is still required as you can see with some of the lights.
Next up will be properly displaying all the enemies, supporting switches and elevators (like the throne, which rises when you pull the switch in the main room), supporting quest items (these are just invisible right now) and UI. Beyond that I’ll start implementing combat, enemy AI, skills, and so on needed for the demo. Also sound and midi music will be in before the demo as well.
Here’s the movie showing off many of the changes:
And here’s several screenshots: