Re: Friday Facts #281 - For a Few Frames More
Posted: Fri Feb 08, 2019 9:41 pm
Wow!
Hey is that a squirrel over there?
Hey is that a squirrel over there?
www.factorio.com
https://forums.factorio.com/
Awesome! I knew it would have been carefully considered first and all angles thoroughly tested. Keep up the amazing work!posila wrote: Fri Feb 08, 2019 8:51 pmThe middle mesh (I should have written mesh instead of geometry in the blog post, I suppose) is how we always draw it in 0.16 and still in 0.17 until you zoom in close enough onto cluster of turrets and the optimized version kicks in (we use trinagle strip instead of tringle fan because we can batch several circles into single draw call using degenerated triangles) and is what we needed to optimize. Stencil buffer was one of the two ideas we had (and first one we tried out) but it still was not fast enough, so we went to try out the second idea which was drawing geometry procedurally in shader, and were disappointed by its extraordinaly poor performance in some cases ... so we went on to come up with more ideas and essentially ended up combinig the two initial solutions.Mike Pote wrote: Fri Feb 08, 2019 8:35 pm @posila Forgive me for wondering the obvious, but before you guys went down the turret radius pixel shader rabbit hole, I'm wondering why you don't just render a semi-transparent triangle fan over the map to form a circle for the turret radius? I'm pretty sure you're already doing this for the electricity network visualisation and the car and tank icons. You could use the stencil buffer to prevent overdraw from overlapping radii here too, and it would cut out your pixel shader having to test each and every single pixel on the screen for a radius.
Something like this, but obviously with enough vertexes to look smooth:
I'm guessing you already tried that and it wasn't performant enough?
im wondering why this is not true by default, imo it should be... and if there is a problem then it would delete the cache and recreate it. faster loading next time if there are no changes.Bilka wrote: Fri Feb 08, 2019 3:30 pmGo into the config and changeLeopard1800 wrote: Fri Feb 08, 2019 3:25 pm Would it be possible to cache the sprite atlases to disk (in some GPU friendly format) after they have been made so that they can be loaded directly the next startup?toCode: Select all
; Options: true, false ; cache-sprite-atlas=false
Code: Select all
; Options: true, false cache-sprite-atlas=true
Adds more realism?Philip017 wrote: Fri Feb 08, 2019 10:05 pm that steam over the reactor setup is too obscuring to be able to work under it
Vanilla without mods loaded in 15 seconds by default and became 7 seconds with the cache enabled. The atlas cache was then created as a 2.38GB file in the Factorio folder.Philip017 wrote: Fri Feb 08, 2019 10:05 pmim wondering why this is not true by default, imo it should be... and if there is a problem then it would delete the cache and recreate it. faster loading next time if there are no changes.Bilka wrote: Fri Feb 08, 2019 3:30 pmGo into the config and changeLeopard1800 wrote: Fri Feb 08, 2019 3:25 pm Would it be possible to cache the sprite atlases to disk (in some GPU friendly format) after they have been made so that they can be loaded directly the next startup?toCode: Select all
; Options: true, false ; cache-sprite-atlas=false
Code: Select all
; Options: true, false cache-sprite-atlas=true
With the cutscene controller announced in FFF #273, it should be easy to create a demanding benchmarking world that can be included by the game as a scenario or downloadable save file. One official map would make performance testing and comparing much easier for players as well as the developers.Henry Loenwind wrote: Fri Feb 08, 2019 10:55 pm What I miss in most games is a "test" button in the graphics settings that renders a couple of scenes and reports the fps. Especially in games where the screen starts out empty and fast to render...
vanilla with out mods for me 18 seconds to launch with out cache, with cache 5 seconds.Light wrote: Fri Feb 08, 2019 10:49 pm Vanilla without mods loaded in 15 seconds by default and became 7 seconds with the cache enabled. The atlas cache was then created as a 2.38GB file in the Factorio folder.
Enabling my mods it went from 1:37 load time to 1:13. The atlas cache file was 5.94GB.
Those who use mods would need the most improvement compared to the slimmer vanilla. However, given the large file it creates just for a rather lackluster improvement, I'd be hard pressed to recommend that being active by default unless you're getting 5 minute load times (mostly due to sprites) and have an SSD to make the process remotely worthwhile.
Woa, killer idea here!Henry Loenwind wrote: Fri Feb 08, 2019 10:55 pm What I miss in most games is a "test" button in the graphics settings that renders a couple of scenes and reports the fps. Especially in games where the screen starts out empty and fast to render...
Agreed I like that idealuc wrote: Sat Feb 09, 2019 12:51 amWoa, killer idea here!Henry Loenwind wrote: Fri Feb 08, 2019 10:55 pm What I miss in most games is a "test" button in the graphics settings that renders a couple of scenes and reports the fps. Especially in games where the screen starts out empty and fast to render...
Why fiddle with the controls and have to figure out specific settings for your GPU, if the game can just try out a few things and give you the option of "optimize for mega base", "balanced", and "optimize for beauty"?
I really like that idea.
On my HDD box:Light wrote: Fri Feb 08, 2019 10:49 pm Vanilla without mods loaded in 15 seconds by default and became 7 seconds with the cache enabled. The atlas cache was then created as a 2.38GB file in the Factorio folder.
Enabling my mods it went from 1:37 load time to 1:13. The atlas cache file was 5.94GB.
We'd need ARM binaries first. I strongly suspect Wube has resorted to inline assembly numerous times, so this would be a substantial undertaking for hardware that would have a very hard time with the game in the first place. (ARM is sloooooooooow! Just for one example, the Switch's SoC is roughly equivalent to a 500Mhz Ivy Bridge era Core i5. Ouchie.)Proxy wrote: Fri Feb 08, 2019 5:01 pm ok so if this gets optimized even more i could probably play it on a Raspberry Pi and take it with me for on the go
Can we please have that as a toggle option inside the new and improved GUI?Bilka wrote: Fri Feb 08, 2019 3:30 pmGo into the config and changeLeopard1800 wrote: Fri Feb 08, 2019 3:25 pm Would it be possible to cache the sprite atlases to disk (in some GPU friendly format) after they have been made so that they can be loaded directly the next startup?toCode: Select all
; Options: true, false ; cache-sprite-atlas=false
Code: Select all
; Options: true, false cache-sprite-atlas=true
Factorio doesn't have an iOS version... I assume you mean OSX? Which is under the Unix umbrella, specifically in the BSD family as a proprietary variant of Darwin, but I digress.Tomik wrote: Fri Feb 08, 2019 8:06 pm So what about Linux/UNIX OS optimization? It is similar to Windows and iOS?
Gave me Starcraft vibes, must be the nostalgia of compression :pCakeDog wrote: Fri Feb 08, 2019 3:24 pm Am I weird for liking the 'noisy' look of low quality compression?