Evening all, a good Mondoid and a Happy New Year. Front and centre, today, will be the work Binky has put into our character animation and lighting systems over Christmas. Before that, however, why don’t you cast your eyes over the glorious array of tweaks, fixes and exciting optimizations that’ll be going into the next build?
EasyP has really been putting a shift in over the festive period, and in terms of polish, usability and niceness the next update should be a doozy. There’s other stuff in the pipe too that’s too early to talk about, but we have some awesome things incoming which Binky will tell us all about.
Well basically, as anyone who follows me on Twitter will know, over the past few weeks I’ve been slowly porting the sprite export tools from XNA to OpenGL and having a lovely time *cough* doing so. All the models we were using to generate the sprites are saved in DirectX *.x format which is lovely and convenient as far as loading them into an XNA project goes, but an utter nightmare when loading them into an OpenGL project for a variety of very boring technical reasons.
But anyway, the upshot of getting all of this working is that we are now able to spit out sprite frames from a more cross-platform friendly environment (which will be good news for modders) and also then have the ability to spit out mesh and animation data which is straight-forward to load into another OpenGL project (such as, for example, the game itself).
One of the other things we’ve been slowly working towards is using proper 3D-but-rendered-as-isometric environments in order to give us better performance on modern graphics cards (as well as nicer lighting and other advantages which come with real 3D) so with this in mind… well… we’ve got friendly model and animation data, why not do the model->sprite stuff in real time?
Please bear in mind this is a WIP and there are a couple of lighting issues and some pop between 3D and sprite zombies.
While fully animated models aren’t exactly the speediest thing you can render, don’t forget that the sprites aren’t going anywhere, settings can specify the number of models that can appear on-screen at once. What we’re able to provide is much smoother animations, more straight-forward character modding, better character lighting, and graphics level-of-detail options to determine how much or little of the characters remain sprites depending on hardware’s capabilities. This is the first step toward the 3D engine which will make Zomboid much better at leveraging hardware.
So a non dedicated graphics card will see big improvements in texture memory due to not needing all the many character anims for living people, with the relatively minimal cost of drawing one model, and while lower specs may struggle with zombies (though could perhaps have the closest 1/2/3/4/5 Zombies render in 3D) high-spec PCs will be able to choose improvements across all characters and everything in-between.
This will afford us more flexibility in terms of combat animations – melee animations specifically will see drastic improvements in terms of general feel and variety, makes combat feel more immersive and intuitive, and add many more player animations without concerns about the number of texture pages we generate for player sprites.
Now the new year is in, and NPC work is dialing back up, we’re looking to start increasing the number of meta-events and generally getting the Sadistic AI Director in motion for the time NPCs come in. As such we’re going to be implementing more meta-events, a bit more intricate than the current gun-fire or helicopter noises. Find scenes of gory horror in buildings, find burnt husks of buildings, dead survivors at the feet of their killer and so on. As well as this, we are working on a new implementation of the zombie migration and distribution, to hopefully allow for more exciting extremes as flippantly or cruelly decreed by the Sadistic AI Director to give the player more stories to tell.
We can also confirm that we’re going to have something of a mini community meet-up on Saturday Jan 25th in Newcastle. We’ll keep it low-key and with limited numbers at first, as we have no idea how many people would want to come, but you can find our Eventbrite ticket application doo-dah right here.
Once we have a firmer idea on numbers we’ll think about potentially expanding, and of course sort out the venue. It will be an 18+ deal though, unfortunately as it’ll be in a pub somewhere. It’s also worth noting that we’ll also be at Rezzed in Birmingham in March too, and we’ll do something similar then.
The Coding of the Living Dead