Well, We're Nearly There
A tale of two halves, with a meeting at one damnably early end of the day and lots of installing and testing at the other end. The goal; to produce a beta installer that stands up to the many PC systems attempting to use it throughout Thursday as the world wakes up in stages.
It's been quite a blur since March when we started putting the prototypes together and figuring out what we wanted from this new tool. I'm very pleased with where we are right now, and I am eager to get cracking with more tweaks, fixes, optimizations, new features and more betas.
The meeting today was simply to confirm that the beta existed, and to double check we did not miss anything. Much time was also dedicated to the next large items on our list, and the order we should tackle them. Still top of my own list is performance, and I have a few fiendish ideas to implement in the weeks to come.
LOD BLOB - This idea involves creating a few patch-work quilts of low-LOD static entities using a single vertex buffer and texture image. These LOD blobs are then used to replace distant single entities used during shadow rendering and also for the far distance of any rendered scene. The upshot is that the draw call count is vastly reduced, and we also ensure only low-LOD meshes are used in the more distant shadow renders meaning less polygons overall. They cannot replace moving entities and transparent ones, but my guess is that there will be more static than dynamic, so we will see a saving.
TERRAIN POLYS - Another obvious target, and more immediate to me, is the strange behavior of the terrain render which on the face of it seems to be rendering 350,000 polygons for a rather flat boring (and empty) scene. It might be right, but I am going to investigate. Even though modern graphics cards consider 'polygons as free', for older cards the polygon count and fill rate play a role in the final frame rate score and non more so than one of the alpha testers who is experiencing some serious woes, even with effects switched off. Strangely though, my three Ultrabooks demonstrate a decent 30fps when extra features are switched off which suggests I might just get away with running Reloaded on integrated hardware with more optimizations and newer laptops.
SERIOUSLY LOW-END - Just to make sure the Reloaded software ran on the worst of the worst, I dug out a ten year old machine running XP and an AGP graphics card for my 'silly test'.
As you can see, a blinding performance metric there for my computer :) Alas, my wonderful AGP card could not exceed to shader model 3.0 and the terrain and entities just rendered white but amazingly everything else worked fine.
As the bloom shader also rendered blank, I could not see the frame rate inside the Reloaded test game, but it's perhaps a good thing I did not. I did consider for a brief moment supporting shader model 2.0 and REALLY notching down the demands on the 3D chip, but I think it makes sense to define some borders to our low-end specification. A ten year old XP + AGP rig is probably not within that scope :)
As I write this, I am doing all sorts of boring and necessary things like formatting Ultrabooks, downloading drivers, installing stuff, testing stuff, making small tweaks and trying installers again. All necessary for a satisfactory beta roll-out, and good guidelines are being made for future releases too.
I have signed the final installer and I can report on a fresh Windows 8 install, you are asked for Administrator privileges and then the software installs without a real hitch. As the DirectX web installer is silent, my WiFi driver was not installed and it skipped it, making the software report a DirectX error. I am now creating a new installer which uses a non-quiet DirectX install so you can see the connection issue and do something about it. I have also uploaded the web installer to Rick so he can host it alongside the beta file, just in case you want to install DirectX separate from the install process (or after it).
Right now I am installing the drivers back onto the Lenovo Ideapad Yoga 13 after the fresh Windows 8 installation which should allow my older installer to finish the DirectX web install properly, and then I will either confirm compatibility with the dreaded Windows 8 or not. I will then move onto other areas of testing to ensure the file I select as the final beta file is the one that won't fall over. Last minute changes can be SO dangerous!
As a reminder for those that do not know, on Thursday we will be releasing the first ever BETA of the FPS Creator Reloaded product to all pledgers of the project. It is thanks to your contributions and support that we've been able to get this far and I am excited to continue working towards making your game making dreams come true.
Don't worry too much about performance on your particular system at this stage as I still have plenty of speed-up ideas I can do to the engine, and as we get real world reports we can narrow our energies toward the most recurring performance drains. It will also be apparent which systems are too low-end for our software, or whether we need to scale back the visual ambitions of the software to allow such low-end compatibility. Stay tuned to this blog to find out about my trials and tribulations in hunting down more performance gremlins.
I also have an inbox slowly filling up with non-performance items, such as a snazzy looking weapon and health screen HUD, but I think we all agree we need to crack overall speed, stability and usability before we go for the finishing touches.
Also a small note, the FPM level files are still in flux and will change for the next version so don't be too precious about any levels you create with this beta as they are unlikely to port to the new version. I will be adding a version control system to allow backward/forward compatibility with level files, but right now it's still got some old stuff in there than needs slopping out.
If any readers want to pledge now and get ready for the beta download, you can find the pledge page here:
Enjoy the BETA and for the first week just see how far you can get with what we have now, and from your feedback we can produce a new version which responds to those individual concerns. It there is anything seriously unworkable, and your specifications are not too low (see above) then we will make those our top priority. No sense moving too far ahead if we're leaving some of our pledgers behind. Can't wait to see the screenshots and YouTube videos of what you come up with!! Be sure to share your exploits with the community so we can all see what you're creating :) Until Thursday!