Upgraded Performance & Optimised RAM Usage

Glory of Rome

Expand the Empire in the name of Rome. Build, manage and grow settlements in this resource driven city builder. You'll create resource, trade goods and cater to the needs of your citizens. The Senate calls administrator, don't keep them waiting.

Hey everyone I've been following up on some reports of crashes and [b]decided I'd bring forward some performance optimisations[/b] that I've been planning. Basically as you build larger cities you'll notice that the performance can dip. There's a lot of factors involved here but here's a quick summary [list] [*] Additional GPU load as hundreds of people and thousands of items are drawn on the screen (even if they're low-poly there can be thousands of things shown at once) [*] CPU usage caused by the citizens of the city and the coordination of their tasks. [*] Memory usage, as the scene gets bigger more things need to be stored in memory [/list] All of those combined can negatively impact the performance. Released today is a series of [b]performance optimisations targeting RAM usage[/b]. While not the most exciting thing, this update drastically reduces the amount of RAM the game requires and that should help address some of the crashes I've been hearing about. This reduction in RAM overall should help with large scale cities. [h2]RAM Usage Before[/h2] Before, the average RAM usage for the [b]assets[/b] in the game were [b]roughly 750MB to 800MB[/b]. This includes the models, audio, textures and other associated data [img]{STEAM_CLAN_IMAGE}/39220494/a7cc582d0327ec475784afd234bd8e4500624009.jpg[/img] With each added building the ram usage would creep up, both from the new models and any new associated people. [h2]Ram Usage After[/h2] I've performed a series of key optimisations and have [u][b]brought the total RAM usage down from 750MB to 335MB[/b][/u]. [img]{STEAM_CLAN_IMAGE}/39220494/aba2d06bee46c1a428cb2b1fe5fba0b08c74268e.jpg[/img] This significant drop should greatly improve the stability of the late game. When you start the game and being a scenario your ram usage should be about 600MB to 700MB. Slowly increasing with the size of your city. [h3]Optimised Audio[/h3] Most of the advisor dialog and senate missions were switched to [b]stream their audio directly instead of holding it in memory[/b]. Functionally there should be no difference in the quality of the audio. A significant saving when there are hundreds of audio files in the game. This streaming may take up a little more CPU usage but I'm going to monitor it. [h3]Optimised Textures[/h3] This is a big one. Behind the scenes a lot of the UI is created from a series of stacked JPG images. This update I've gone through all of the most heavily used assets and converted most of them to be 512x512 tillable images. This means that instead of using a giant 2048x image for some of the larger UI items, I can just tile these smaller images, using much less ram. Other textures were also optimised so that only the correct sizes are used. During development it was common to have them in larger sizes and just downsize them on the fly, but that takes extra memory. So with this update they've been sized exactly to whats needed. Overall you shouldn't notice visually any changes. [h3]Optimised Models[/h3] Models are the primary part of the game. There's hundreds of buildings (and thousands of models) that come together. As part of this update I've gone through the top 20% of the largest models and optimised them further. Visually they will still retain their semi low-poly aesthetic, but behind the scenes I've cut down the polygons considerably. For example some of the dwellings had 25% of their polygons removed to cut down on memory usage. Since most buildings wont ever be seen close-up, these changes have helped cut down on ram. [h2]Further Optimisations[/h2] I've got plenty more planned optimisation wise for the game. I want the performance to get to a stage where we can have 1000+ models on screen and running at 60 FPS. For that to happen I need to investigate all areas of the game and make sure that when I find improvements it won't impact other parts of the game (e.g optimises the CPU and GPU usage but then loads way too much in RAM, ruining the performance gained here!) [h2]Support Forum[/h2] [u][b]Please contact me on the support forum if you have game crashes, bugs or other issues with the game[/b][/u]. I want everyone to be able to enjoy my game so if you have concerns please create a new support ticket and try and outline any steps / information / screenshots you can. I check the forums at least once a day so please reach out if you have issues!