Wednesday, 18 December 2013

Thursday All Nighter

True Imposters Integrated

I had a deadline of having an internal testing version for Thursday morning, and due to the nature of the remaining work I had to work through. I started what I thought was a simple clean-up and integrate at 3PM on Wednesday and have just now finished at 7AM on Thursday (with about two hours break). As this is technically a lot of my Thursday energy used up, I thought I would make my blog now, just in case I sleep through the rest of the day.

It was grueling, but managed to solve the occlusion popping issue and tame the quad renderer in time to make an installer and upload.  The quad stuff was a real challenge and included a LOT of stuff I had not really considered such as regenerating based on various camera factors, requiring multiple quad buffer data structures for each camera and the balance between per-cycle workload and overall performance in real terms.  Fortunately, much vexing and trial and error solved the issues and I was able to come up with something passable.

Quad Visuals

I am still not entirely happy with the transition effect between the LOW LOD model geometry and the QUAD imposter, one because there seems to be some lighting differences between the two renders and also due to the clipping thresholds which will need to be model specific rather than hard coded into the shader.  I am pretty sure the lighting is due to incorrect use of shadow and dynamic lighting, both of which I can either simulate in the quad render or alternatively, to fade the LOW LOD render slowly into the lighting attributes which the quad uses. The former is more desirable, but may have a cost given their distance from the player camera.

Remaining Things

The goal of a 1.004 beta for Friday night is now very reasonable to achieve given the work just done. I have a few tweaks I want to get in, such as saving the slider settings between sessions, and perhaps some way to reset them. The question of whether they should be saved with the level files, or saved globally is something I should like to think on. I suspect both, but I will need to come up with a system that is intuitive and not clumsy.

There are some other tweaks that are less important, but would transform the overall look and sound of the beta to give it a nice feel, but we will see how much actual time I have for these trinkets.

Signing Off

Hopefully I can get the larger bitmap fonts for the ammo and health numeric before the update as I think it would improve the in-game stat panels quite a lot.  Eventually we will have a lot more stat panel choices, but for now I am aiming for something generic and functional, also clean and polished so it would not look out of place in any modern game.  There are some other graphics in the wings too, but I will leave those as a surprise for when you get the next beta update!


  1. A lot of hard work going on there. Thank you.

    1. What!! A short comment? :p


      I totally agree - a lot of hard work :) I don't know how Lee does it!

  2. Lee? Quick question ? After first official Release of Reloaded will you please add a option in all fps creator classic model packs to install for reloaded so we can use all classic models in reloaded they have alot of cool weapons and creatures and weapons from classic spawn in game on reloaded but when picked up nothing happens and im not great at coding or editing files so just wondering if they could be changed in the future making it easier ??

    1. I don't think that would be a job for Lee actually. What Rick is planning is getting all content creators to reupload their materials to the game creators story with the capability for Reloaded.

      Model Packs won't be supported for Reloaded as the intent is to promote the new store. For getting model packs you already own into Reloaded you'd have to do this manually. Which is indeed a bit of a pain and time consuming.

    2. the game creators store* (not story lol)

  3. Hello Lee, great work with imposters!
    thank you to bring to us this marvellous technology!!
    one little request: when is possible, maybe in v1.005, could you please put an "eraser tool" in editor?
    it could be useful to remove portions of (or entire) forest in a level, and not tree by tree :D
    thank you!

  4. ""could you please put an "eraser tool" in editor?
    it could be useful to remove portions of (or entire) forest in a level, and not tree by tree :D""

    Yeah that would be great!

  5. An eraser tool would be nice and a smoother and sharpening tool.

  6. ...and a decent 3D view and different brushes :) The terraineditor today is very very basic.

  7. " it would not look out of place in any modern game."

    And you think a "lives" counter doesn't look out of place in a modern game?? What was the last modern FPS that you played with a limited number of lives?!

  8. I take your point, but the concept of a medi-pack to replenish your health, or a penalty of starting at the last checkpoint are both still pretty popular ideas. This feature just combines the two :)

    1. Not really. The concept of "health" (the amount of damage that can be taken before dying) is fine (though a default of 100 rather than 5000 is a little more realistic, assuming the heartbeat symbol indicates current health), but "lives" (a limited number of tries) are old-fashioned and just encourage rage quitting. Carefully placed checkpoints are the norm these days, with some more hardcore games simply forcing you to restart the entire level. Some games try more interesting techniques, such as requiring a teammate to revive you using a limited supply (normally 1 or 2) of adrenaline needles or single-charge defibrillators.

      So IMO, while it shouldn't necessarily be removed, a limited number of lives (remember, there's a difference between "lives" and "health") should not be the main solution to death.

  9. A fair comment on the 'limited number of tries' objection. If I can get more feedback from other users on this, maybe we can change 'lives' to 'health packs' and keep the modern game feel going...

    1. Well maybe not. My opinion is that you should keep support for the lives concept, but make it easy to disable/hide, or, even better, disable it by default. And don't change it to "health packs"; it doesn't make it any more modern and if someone wants to use the concept of lives, they're going to want them to be called lives.

      It kinda sounds like I've changed my mind. I haven't. My first comment was that lives are not modern, not that they should be removed. My second comment was to clarify what I meant and to provide some examples of modern techniques. My third comment (this one) is to say that you shouldn't change how the lives system works except to make it less permanent or easier to disable.

      The reason for modern games not using lives is that it's "unrealistic". "Why does my character come back to life when he dies?" ... "Why does he only come back to life 3 times?"

      The way modern games get around this is to use checkpoints. Rather than time continuing to flow forward after you die and your body being recreated, time is rewound and the gamer gets another chance. Inside the game world, the character is a perfect fighter and never dies. The enemies see this terrifying soldier running towards them, dodging all their well-hidden traps as he knew they were there. From the gamer's perspective, he's already died several times and the game time has rewound back to the checkpoint each time. The gamer learns where the traps and enemies are and can simply dodge them, but the enemies don't know this because their timeline has been rewound, so they just see an all-knowing soldier. It makes the gamer feel powerful if done correctly.

      I hope I've been clear :)