Friday Facts #230 - Engine modernisation

Regular reports on Factorio development.
milo christiansen
Fast Inserter
Fast Inserter
Posts: 106
Joined: Thu Jul 30, 2015 7:11 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by milo christiansen »

kellerkindt wrote:Please don't split the renderer. This just causes either more work for you or one renderer to be favored while the other runs bad and/or with bugs.
Please. think about OpenGL 4.5 only or Vulkan.
I'll second this. There is no reason to support DX when OpenGL works fine. Vulkan may be a bridge too far right now, as it isn't really supported as well as it should be everywhere, but newer versions of OGL are pretty close to Vulkan in a lot of ways anyway.
wvlad
Fast Inserter
Fast Inserter
Posts: 217
Joined: Thu Jul 13, 2017 9:55 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by wvlad »

Each Friday I check news to see what's going on with the belts compression issue because it's the only really critical game-breaking thing for me but there is only a decorative change again :twisted:
I imagine what would it be like if I migrate my map to 0.16 earlier, luckily it's only like 3 weeks of waiting already.
Jap2.0
Smart Inserter
Smart Inserter
Posts: 2375
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Jap2.0 »

How much should we be expecting by way of optimization (ex. less lag when using nukes) and new special effects?
kellerkindt wrote:Please don't split the renderer. This just causes either more work for you or one renderer to be favored while the other runs bad and/or with bugs.
Please. think about OpenGL 4.5 only or Vulkan.
You realize that the renderer has been split for a long time? Also that only using OGL 4.5 or Vulkan will prevent many people with old hardware or software from playing?
Matthias_Wlkp wrote:Does the new engine affects system requirements at all?
I doubt it will change them much - it'll probably add and drop support for various things (they said they wanted more compatibility but they are using newer versions of some software).
ledow wrote:As a programmer, I could never get on with Allegro. It's history is older than SDL (I believe, I can't be bothered to Google) but it was always something that people ended up ripping out later on.
Yep - Wikipedia says SDL was 1998 and Allegro was early 90s.
admo wrote:Not going to advocate DX12/Vulkan here but I do wonder how much of the game's CPU budget is eaten up in rendering code? From the start developers told us they wanted DX12 because the driver is too expensive (CPU-wise) because we do too much state tracking. Factorio is uniquely one of those games that can easily get CPU-bound so I'm hoping developers could weigh in on their experiences here.

From the driver's point of view DX12 drops half the work of the driver onto the apps to do themselves but the app teams are unwilling to put in the man-hours to do it right, so in the end they regress performance wise. Even big engines like Unreal are going about it wrong, but they have compelling reasons for that.
I was wondering something similar. We've seen how good the devs are at optimizing this stuff. I think with some of the neat features they could do that to ridiculous levels. My major concern is that DX12 is only on Windows 10 (I use 7). Vulkan has more support, however it's less of an established thing than DX - in another thread Posila said that it might happen if someone felt like it but it's somewhat incomplete and not supported by Apple.
There are 10 types of people: those who get this joke and those who don't.
User avatar
Ghoulish
Filter Inserter
Filter Inserter
Posts: 468
Joined: Fri Oct 16, 2015 8:40 am

Re: Friday Facts #230 - Engine modernisation

Post by Ghoulish »

9X5DSYQ.png
9X5DSYQ.png (733.39 KiB) Viewed 11205 times
Good luck with the graphics engine rewrite, can't wait to see the end results, and the upcoming UI changes too!
See the daily™ struggles with my Factory! :D https://www.twitch.tv/repetitivebeats
tetryon
Fast Inserter
Fast Inserter
Posts: 190
Joined: Wed Nov 04, 2015 2:49 am
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by tetryon »

Can you post the build that was used for the screenshots?

=)
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by bobingabout »

Point of interest. no DX9 means no Windows XP support.... no big deal there really, since there's already no 32bit support.

but no DX10 support means no Vista support too.

I guess this would make windows 7 a minimum requirement, at least on the windows front anyway.

Also, for god sake, don't use SDL for graphics. I gave it a try, and it was crap. SFML wasn't bad though.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.
Caine
Fast Inserter
Fast Inserter
Posts: 213
Joined: Sun Dec 17, 2017 1:46 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Caine »

Ghoulish wrote:Picture: A user interface is like a joke. If you have to explain it, it's not that good
I disagree. It depends on the goal of the user interface. If high productivity is your goal then a learning curve is often necessary.

It is nearly impossible to make a tool simpler than its domain and there are some very complex domains out there.
E.g. 3D modelling software is not easy to use because 3D modelling itself is not easy.
roidal
Inserter
Inserter
Posts: 30
Joined: Mon Mar 07, 2016 9:49 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by roidal »

kellerkindt wrote:Please. think about OpenGL 4.5 only ...
And effectively dropping OSX and almost all linux-support?
:?
Jarin
Long Handed Inserter
Long Handed Inserter
Posts: 87
Joined: Thu Aug 28, 2014 8:01 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Jarin »

Literally laughing till my sides hurt at today's FF. Thanks, guys.

Good luck with that graphics update... sounds like you've got your work cut out for you.
Slayn25
Fast Inserter
Fast Inserter
Posts: 125
Joined: Sun May 15, 2016 5:59 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Slayn25 »

make sure you save your old code for the april fools update (-:
DutchBully
Inserter
Inserter
Posts: 23
Joined: Mon Apr 24, 2017 4:54 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by DutchBully »

I have no clue what this all means to the game. I'm not that technically knowledgable. But having an older system to run Factorio on, most of my worries go to changes that dramatically affect FPS/UPS. The latest updates already gave alot of performance back, specially late game. Will changing this engine to own code and SDL undo that or actually improve FPS/UPS ?

DB
Caine
Fast Inserter
Fast Inserter
Posts: 213
Joined: Sun Dec 17, 2017 1:46 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Caine »

DutchBully wrote:Will changing this engine to own code and SDL undo that or actually improve FPS/UPS ?
Most performance improvements seemed to be independent of the rendering pipeline. As for this change, time will tell but I am not that worried. The developers are pretty dedicated to make the game perform well.
User avatar
burisk
Burner Inserter
Burner Inserter
Posts: 17
Joined: Sun Mar 12, 2017 1:58 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by burisk »

What about OSX and Linux support for the future? And.. will be there higher requirements for HW after this engine change? Because, my MBP 15" 2015 on Full HD without smokes, and without maximum zoom-out works awesome without audible cooling (fans). So, I wonder what this do with this type of hardware. :)
User avatar
MeduSalem
Smart Inserter
Smart Inserter
Posts: 1686
Joined: Sun Jun 08, 2014 8:13 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by MeduSalem »

bobingabout wrote:but no DX10 support means no Vista support too..
Microsoft doesn't support Vista anymore anyway for about a year now... and apart from that... good riddance.
ili
Long Handed Inserter
Long Handed Inserter
Posts: 88
Joined: Thu Apr 14, 2016 6:19 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by ili »

I don't know anything about game coding.
Just wanted to ask what is the difference between coding for OpenGL 3.2 VS Vulkan?
Is Vulkan harder to do?
rkfg
Long Handed Inserter
Long Handed Inserter
Posts: 62
Joined: Thu Jan 15, 2015 11:11 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by rkfg »

Vulkan would really help with parallel renderer, something that Factorio might not even need. It's not CPU-intensive on the graphics front from what I saw and read, the world updates eat most of the CPU. Vulkan allows to load all the cores when you prepare and fill the GPU buffers (commands, vertexes, textures etc.) but Factorio only uses 2D sprites and there's not that many of them on the screen at any given moment. So it's really hard to tell if increased programming complexity that Vulkan requires is worth it. Basically, with Vulkan the game developers writes their own videodriver optimized for this particular game. Not to the level of working with the GPU I/O ports and PCI-E bus but much closer to the hardware than what abstraction layers like OpenGL/D3D offer.
Chaoseed
Inserter
Inserter
Posts: 36
Joined: Sat May 02, 2015 2:44 am
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Chaoseed »

Those bugs, while probably painful to deal with, were pretty amusing to look at! (And somewhere, Fred Brooks is nodding.)
Ejsstiil
Burner Inserter
Burner Inserter
Posts: 5
Joined: Thu Feb 08, 2018 2:06 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Ejsstiil »

Jap2.0 wrote:My major concern is that DX12 is only on Windows 10 (I use 7). Vulkan has more support, however it's less of an established thing than DX - in another thread Posila said that it might happen if someone felt like it but it's somewhat incomplete and not supported by Apple.
I have the same concern. I am using Win 7 till I can, can't imagine myself to go into spyware and ugly os only because DX12 :shock: :shock:
Tricorius
Filter Inserter
Filter Inserter
Posts: 279
Joined: Fri Jul 01, 2016 9:04 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Tricorius »

burisk wrote:What about OSX and Linux support for the future? And.. will be there higher requirements for HW after this engine change? Because, my MBP 15" 2015 on Full HD without smokes, and without maximum zoom-out works awesome without audible cooling (fans). So, I wonder what this do with this type of hardware. :)
I kinda ... burned out the internal keyboard on my MacBook because I wasn’t paying attention to the heat (I also think the fans were misbehaving). So I commandeered my wife’s Alienware 17”. I’m glad you track your heat situation better than I did :D
Panderturtle
Inserter
Inserter
Posts: 20
Joined: Wed Dec 13, 2017 2:32 pm
Contact:

Re: Friday Facts #230 - Engine modernisation

Post by Panderturtle »

Nice work, new engine seems always to be a good thing.
Post Reply

Return to “News”