Monday, 28 October 2013

Monday March

Only A Few Days

There is some comfort that this version is not going into a retail box, being duplicated 10,000 times or going on stage at E3. It's also comforting that the intended audience are going help and feedback back, rather than criticize and condemn thanks to the pledge system of development.


Had a good day today of performance hunting, and found many islands of slow which I took great pleasure in sinking.  Everything from shadows, post processing, too many duplicated object rendering, redundant rendering and small improvements in code layout all contributed to the FPS creeping up from what we had a few days ago.

As you can see above, I can get 200fps on an empty terrain level. Also bear in mind this was an old shot and I have made improvements since.  Of course you will not need such a frame rate but it was necessary to get accurate measurements of each module in isolation which means switching everything off.

Graphic Options Panel

Thanks to the options panel, each user of the beta can also tweak which parts of the engine should be active, and in some cases the degree of support is provided such as the Reflection mode which when set to zero completely removes the reflection from the water. When set to 1-50 the sky is reflected but no objects or terrain. When set to 51-100 all reflection activity resumes. As we proceed, I will add more fidelity to these graphic option modes so that you can tailor the engine experience to suit your hardware, and ultimately your intended audience.

VSYNC Option

A timely request from the blog comments saw the introduction of a new flag in SETUP.INI file which allows the engine to boot the game in VSYNC mode ON or OFF. This means you can cap your frame rate to the refresh rate of your graphics card for super smooth zero-tear screen rendering.  By default I might keep this off for the purposes of the beta so we can see how high some users will get with their performance metrics.

Keeping The Sky

I also allowed the sky box to remain, even if the camera distance was pulled in to an extreme degree. I am not sure how to solve the issue of FOG vs SKY yet, as the two rather clash but I will let the beta process resolve that one :)

Alpha Users Beavering Away

Another fine shot from our sound guy, this time deep in ice mountain territory and close to the site of a crashed saucer.


It is my fond hope that I can do justice inside the engine to the ideas and imagination you guys are about to unleash onto the world with Reloaded. It's not just about getting performance, but getting it in the kind of situations your game will find itself.  Imagine the scene above as the site from which you will sniper the guards patrolling the complex.  Just imagine how much AI the engine will need to govern to show you the 20-30 enemies you have secreted around the base.  I have my work cut out, and why I think the employment of LUA (or other super fast script) and DarkAI over a multi-core solution is vital to create the kind of scenarios your games will eventually demand.

Signing Off

For the remaining few hours, I am going to re-align the AI with the various frame rates the engine can produce and get things like movement speeds, animation speeds and AI work-load balanced out. This should then allow the character behaviors to seem more normal and produce a good foundation for moving forward with AI. Tuesday will see the cleaning up of the beta files, production of an installer and testing on various Windows versions to ensure a fresh install works out of the box.

On Wednesday I have a meeting to look at the beta version from Tuesday evening so there will not be much happening on that day except talking and recovering from talking.  Just enough time and energy to upload the file to the server and batten down the hatches for a huge amount of bandwidth sucking activity come Thursday.

We don't have a bug base set-up as I could not find an appropriate one for the beta, but you can use the Reloaded Forum to ask questions about how to do things, but specific bug reports should be sent to rick@thegamecreators.com until further notice (that is, until we have a more formal bug reporting system in place).  Avoid sending them to me directly as I will be putting filters in place so that all reports to me have been confirmed by at least two people, and a full reproducible report creating so I can focus on fixes rather than attempting to reproduce bugs.

14 comments:

  1. (I will be putting filters in place so that all reports to me have been confirmed by at least two people, and a full reproducible report creating so I can focus on fixes rather than attempting to reproduce bugs.)
    Sounds like a good idea,nice work again lee.

    ReplyDelete
  2. I think I'll close my email account... Thanks Lee! On a more serious note, all bugs and issues will be looked at by the team. It's critical the software works well across all hardware.

    ReplyDelete
  3. 200fps! - Looks like reloaded is living the dream ;) haha

    ReplyDelete
  4. First up, another properly excellent blog post! That includes Rick's comment. I'm really excited for Reloaded now, far more than ever before. It's just a shame I had to buy a new phone (well, a second-hand Galaxy S3), otherwise I would be pledging at Gold level right this instant.

    Second, wow!! I'm loving your sound guy (shutup, you know what I mean!). He's giving us the first truly modern-looking screenshots!

    Third, it's great that you put in the option for VSync, but could you add an option to use DBPro's built-in hacky limiter? Because:


    --------IMPORTANT IMPORTANT IMPORTANT--------

    Using vsync WILL cut your FPS by half!! It is possibly the SINGLE BIGGEST SLOW-DOWN in modern games and the first thing I always turn off. So you can use it if you want, but it WILL cut your FPS by half.

    Fourth, Lee, could you confirm whether or not doing a test game will automatically run the game in the correct resolution or not? Not that it matters terribly, but I'd rather be testing my games with all my beautiful pixels in use.

    Finally, on the subject of sky vs fog, the most common solution is to make sure the bottom half of the sky is faded into the same colour as your fog will be, so it seems like the sky is being fogged too. Alternatively, if you were to use a shader-based fog (big slow-down), you could manually foggify the skybox in the shader.

    ReplyDelete
  5. That's 200 FPS with everything turned off again. This does not help our confidence in the software Lee.

    ReplyDelete
    Replies
    1. Its good to know that people with older machines can run FPSC-R however. At the least.

      Delete
    2. It's not been tested on an less powerful card yet, though. That 200 FPS could still translate to 15 for those with far less power.

      Delete
  6. the purpose was to stabilize reloaded to the point where he could turn on the stuff
    to see how it performs

    @Lee
    i would like to suggest to use the pre-testers to take screenshots of FPS counts
    depending on their system
    someone with a low end card - should show a minimalistic graphics setup
    medium card users should show middle settings
    and ofc highend card users should show how it performs under total stress
    only this way - ppl can get a idea how their Cards are goign to perform
    and even if someone finds himself in the low end card sector
    he could be sure to be able to run reloaded or not
    besides it is always good to have some kind of
    minimal to optimal Requirements setup

    ReplyDelete
  7. Yes, the fog color should be the same as the sky color at the horizon, or as close as possible - an artistic user choice. It would be more "atmospheric haze" rather than fog, that blends the most distant objects into the horizon.

    ReplyDelete
  8. Hello Lee,
    Great work really! I really like the snow terrain assets..have you think about a shader that cover by snow rocks, buildings, or object at all? You may have a look here: http://timaksu.wordpress.com/2013/07/23/a-snow-shader-for-your-games/
    It doesn't not only cover object by snow, but also by grass..

    ReplyDelete