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.
As a graphics programmer, the most charitable interpretation I have here is that in 2D all the animations are baked into texture atlases. A 3D model would re-use its textures during animation, in 2D it’s a new one.
But I don’t see Factorio as being a VRAM pig, even with all their animations, which you could certainly improve on from the simplistic “every animation frame is a whole new texture” model.
you do not need a different texel for every rendered pixel in every animation frame, which is what you need, and factorio has, with the sprite approach.
mitxela · · focus · HN ↗
tasuki · · focus · HN ↗
Surely from first principles one'd expect 3D models to be heavier than the 2D renders, due to the extra axis?
namrog84 · · focus · HN ↗
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.
dymk · · focus · HN ↗
> Barring things like textures and others.
Other than some really expensive stuff, it's not expensive. Who could have guessed?
justsid · · focus · HN ↗
But I don’t see Factorio as being a VRAM pig, even with all their animations, which you could certainly improve on from the simplistic “every animation frame is a whole new texture” model.
mitxela · · focus · HN ↗