this post was submitted on 24 Aug 2023
89 points (100.0% liked)

Gaming

30568 readers
41 users here now

From video gaming to card games and stuff in between, if it's gaming you can probably discuss it here!

Please Note: Gaming memes are permitted to be posted on Meme Mondays, but will otherwise be removed in an effort to allow other discussions to take place.

See also Gaming's sister community Tabletop Gaming.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

Should put this whole issue to rest (for a while, at least πŸ˜‰).

you are viewing a single comment's thread
view the rest of the comments
[–] hypelightfly@kbin.social 4 points 1 year ago* (last edited 1 year ago) (1 children)

The console itself wasn't a mistake. Their promises of feature parity was the mistake.

Not making it have the same amount of RAM was also a mistake, it could have been just a weaker GPU which would have had less issues.

[–] soulsource@discuss.tchncs.de 3 points 1 year ago (1 children)

Whoever made that decision obviously never worked in gamedev.

[–] dillekant@slrpnk.net 1 points 1 year ago (1 children)

I don't think anyone in these comments has worked in gamedev.

[–] soulsource@discuss.tchncs.de 1 points 1 year ago (1 children)

I was talking about the person(s) at Microsoft, who decided that it's a good idea to have less RAM on the Series S than on the Series X...

(And for context: I work in gamedev, and in my experience making games stay within the memory budget is one of the toughest parts of porting games to consoles.)

[–] dillekant@slrpnk.net 1 points 1 year ago (1 children)

who decided that it’s a good idea to have less RAM on the Series S than on the Series X…

Supply chains are complicated, and MS probably did their due diligence to ensure minimal blockages. From seeing the memory structures of newer video cards, I'm pretty sure there are supply constraints to memory to think of.

Honestly I think gamedevs leaning on memory this hard instead of compute is a mistake. You can have intelligently tiled, procedurally generated textures and have a lot more of them, but instead everyone is leaning on authored content on disc. This goes against industry trends in non-game rendering where procedural generation is the norm. If Doom Eternal can look that good with forward rendering, there are no excuses.

My main beef with the hate on the Series S is that both times it's been a big deal (BG3 and Halo Infinite), it has been split screen which has held back shipping. The community would be as justified going after split screen as they are going after the Series S.

[–] soulsource@discuss.tchncs.de 2 points 1 year ago (1 children)

Tell that to our artists πŸ˜‰. As a coder I'm all for procedurally generated content. I did replace several heavy textures in our games by procedural materials, to squeeze out a couple of extra MB. However, that's not the way artists traditionally work. They often don't have the programming knowledge needed to develop procedural materials on their own, and would need to rely on technical artists or programmers to do so. Drawing a texture however, is very much part of their skillset...

But yeah, the mention of "squeezing out a couple of MB" brings me to another topic, namely that (at least in our games) the on-disk textures are only part of the RAM usage, and a relativley small one on comparison. In the games I worked on, meshes made up a significantly larger amount of RAM usage. We have several unique assets, which need to fulfill a certain quality standard due to licensing terms, such that in the end we had several dozens of meshes, each over 100 MB, that the player can freely place... Of course there would still be optimization potential on those assets, but as always, there's a point where further optimization hits diminishing returns... In the end we had to resort to brute-force solutions, like unloading high quality LODs for meshes even if they are relatively close to the player... Not the most beautiful solution, but luckily not often needed during normal gameplay (that is: if the player doesn't intentioally try to make the game go out-of-memory).

But I'm rambling. The tl;dr is: The memory constraints would not be a big deal if there was enough time/money for optimization. If there is one thing that's never enough in game dev, it's time/money.

[–] dillekant@slrpnk.net 1 points 1 year ago (1 children)

OK so this is now offtopic for the conversation, but...

However, that’s not the way artists traditionally work.

To some extent, it's authoring tools which affect how they work. A procedural materials pipeline can help them compose on top of already procedural content. In a way, you could see PBR as a part of that pipeline because PBR materials are physics modelled. Having said that I do take your point, even building out that pipeline takes time. Creating a PBR materials library is not super easy, and obviously organic stuff is very hard to model as a material.

meshes made up a significantly larger amount of RAM usage

From watching blender modelling, I thought the pattern was to have minimal rigging on the base mesh and then tesselation via normal maps + subdivision (apparently this is very doable even with sculpting). Obviously for animation you need a certain quality but beyond that I thought everything would be normal maps, reflection maps, etc etc.

[–] soulsource@discuss.tchncs.de 2 points 1 year ago (1 children)

I'm not an artist - my 3D modelling experience can be summed up as "none", so I can't really answer your last point. I know for certain that we don't use normal maps to the extent they could be used, and therefore have way more detail in the meshes than they would need to have. I'm also pretty certain that we don't do any tesselation on player pawns, and I think (but am not certain) that this is due to some engine limitation (again, don't quote me on that, but iirc Unreal doesn't support tesselation on skeletal meshes on all our target platforms).

[–] dillekant@slrpnk.net 1 points 1 year ago

TIL for no tessellation on skeletal meshes. I hope over time Unreal / Epic will put some effort in on minimising memory usage, even though I know they "just" got done with Nanite and friends.