Comment by mitxela
7 hours ago
Remember that Factorio does not release its 3D models. Everything in the game is a 2D render of a 3D model, which is why the game uses so much VRAM.
7 hours ago
Remember that Factorio does not release its 3D models. Everything in the game is a 2D render of a 3D model, which is why the game uses so much VRAM.
As far as the game in concerned, the sprites are all just 2D assets. The fact that those assets came from a 3d model during development has no effect on performance. They also do manual post-processing on most of the 2D renders.
https://factorio.com/blog/post/fff-146
Literally what I just said
Your wording can easily be read as them shipping 3d models and rendering them as 2d at runtime. It's a weird way to say the game is made up of 2d assets.
2 replies →
?
The game doesn't consume that much VRAM. It plays on 4 GB GPUs just fine. The GPU only needs to keep resident what's currently on the screen. Even including every animation frame, that's 1 GB tops.
Hell, the minimum requirements are a GeForce 750 Ti, or Radeon r7 360. Those are 2 GB GPUs.
In fact, sometimes when your game lags too much you can speed it up by zooming in! (Only in some cases)
> The game doesn't consume that much VRAM. It plays on 4 GB GPUs just fine.
Not everyone bought a GPU to run LLMs on. That is quite a bit of VRAM, especially for non-desktops
That's the amount of VRAM that has shipped in budget to midtier gpu's since at least 2016 with the RX470/480 from AMD. You can find even older & slower examples from Nvidia and AMD (ex. Nvidia 740GT 4GB edition)
Gaming hardware reviewers have been complaining about 4GB of VRAM not being enough since probably 2018 onward.
I have a weird setup with two very old 5:4 1280x1024 monitors I like to use for fun, and even playing Subnautica (2018 Release date) I can use up 3.4GB of VRAM at that low of a resolution on High settings. (playing on a single monitor)
5 replies →
If you play video games, it's basically nothing. I bought a 6 GB VRAM card for ~$300 a decade ago. Many recent games require a minimum of 8 GB VRAM and can scale up to 16 GB VRAM on higher settings.
2 replies →
The 2D graphics are heavier than you might suspect. But Factorio is overall a very well optimized game, and it runs far better on my office notebook than any comparable game. This will work fine on any not ancient notebook with integrated graphics.
If ONLY I had know to buy 16 GB of VRam on my cards. I have 12, but they struggle.
Hell if I had know that a 5090 would be worth 6000 USD I would have brought as many of them as I could for 2000 USD!
What the actual fuck are you talking about? This has to be a troll comment.
4 GB is nothing. Mid-grade GPUs from 2013 had 4 GB. Budget GPUs from 2016 (10 years ago!) had 4 GB.
4 replies →
it does?
I don't have it installed now (lest I get tempted into a quick 2-hour session and end up being late for work 12 hours later), but IIRC it performed the same for me on iGPU and 4090, even on the big saves running below 60 FPS/UPS.
> Everything in the game is a 2D render of a 3D model, which is why the game uses so much VRAM.
Surely from first principles one'd expect 3D models to be heavier than the 2D renders, due to the extra axis?
Purely from a vram perspective. A triangle is just 3 vertices and some edges. A few bytes of data.
A similar 2d image of a triangle would likely be thousands of bits of data.
The 2d probably uses a little less per pixel. Whereas the triangle has slightly more expensive compute per pixel cost. But modern gpu have dedicated hardware for that.
3d is probably more expensive compute but cheaper vram usage. At least to a point and a certain set of conditions. Barring things like textures and others.
This is such a wild take, I'm not sure where to start. Let's just consider this:
> Barring things like textures and others.
Other than some really expensive stuff, it's not expensive. Who could have guessed?
Do they really load so many spirites into memory it's heavier than 3D?
There are assumptions being made about texture resolution.
The high quality sprites are 64 pixels across per tile. With each tile being 1 meter, 1 pixel is 1.56 cm (About 0.63 inches) across. By today's standards, that's a very low texture resolution, though they can get away with it when your camera is so far away.
But if the game was 3D, you could expect players to put the camera closer to your objects. You'd need significantly higher texture resolutions. And you'd need a texture for each part of the object.
Meanwhile, consider a 3x3 object. That's 192x192 = 36,864 pixels. Assume it has a 60 fps, 2-second animation loop. That's 4,423,680 pixels. With 8 bytes per channel and 4 channels (RGBA), that's about 17.7 MB, which allows you to store 56 objects per GB.
Which doesn't sound like a lot, but we're making some huge assumptions. Not all objects are 3x3 tiles. Most don't have 120 frames of animation.
And as I mentioned in another comment, you don't need to store ALL the game's art in VRAM at once. Only what's on the screen. And you can certainly fit an entire screen's worth of animations in a 2 GB GPU.
> Meanwhile, consider a 3x3 object. That's 192x192 = 36,864 pixels. Assume it has a 60 fps, 2-second animation loop. That's 4,423,680 pixels. With 8 bytes per channel and 4 channels (RGBA), that's about 17.7 MB, which allows you to store 56 objects per GB.
I am assuming that they are laveraging multiple compression technics like using texture specific compression on the gpu, or sub sampling the resolution directly. 8 bytes per channel seems rather large here as well.
1 reply →
Yes. Several GB. I had to enable half resolution to play modded Space Age.
Hmmm... The Factorio team is famously performance oriented, and more scenes are often far less so. Are you sure the problem wasn't the mods? I have good memories of sending my Kerbal frame rates to hell with generous modding, both for graphics and the physics engine.
2 replies →
Somehow the engineering behind this will help that fly and all his viewpoint windows