Why are composite textures so low-res?

Background: 1024x1024 texture; Left: texture applied as decal to package; Right: texture applied as TextureId/ShirtId:

I have 4 GB of VRAM and run Skyrim on ultra with bountiful 4K textures no problem, so needless to say my hardware is plenty capable of using full-res textures. Why are the composite textures so low-res in that case? Is there a technical limitation, or are high-end machines just not accounted for? Are there plans to fix this in the future?

@zeuxcg

Is this with R6 or R15? I think R6 is more low res than R15, but R15 will still down scale the texture. All the textures for R15 are composited onto one 1024x1024 image, for R6 it’s a 1024x512 image but it supports fewer accessories (the additional accessories will be separate images).

2 Likes

The package used above is R15. There is only a UpperTorso+LowerTorso, a head without a face, and a Shirt.

Why can’t it be any larger than that, say 4096x4096? (assuming there’s variable composite size based on hardware capabilities)

The textures being composited aren’t scaled based on additional space being available. They are fixed size and the rest of the texture will be blank.

There is no variable size right now, this seems like a reasonable thing we could implement in the future though, someone on the rendering team would know more.

1 Like

I realize that R6 isn’t exactly going to be receiving the same level of support that R15 will from here on (as being realistic R6 is to be considered outdated at this point).
However, before R6 dies off completely (whenever that is…) is there any chance that R6 could have its composite texture bumped up to the same level of quality as R15? I’ve been requesting it for years, long since before R15 was a thing and after persisting about it I was eventually told that it was in the pipeline. I can only assume now that the effort to do so with R6 was dropped in favour of implementing it with R15 instead.

I still would really like to see it in place for R6 while there’s still a chance though, for people like me who work with clothing a lot it is a REAL pain in the *** when you spend sometimes upwards of twenty hours of work on a piece of clothing only for it to come out in bad quality, in essence it feels like you never even get to see your own true work.

This looks like you use very different UV mapping on the left & on the right - this is not an apples to apples comparison. I believe the torso accounts for about 512x512 or so on the composit space, you should not see as much of a difference.

We do not use hardware compression on the composits since it’s done at runtime and we don’t have a GPU-side compressor available that would work, so we limit the texture sizes - 1k^2 texture is ~4 MB so that you can have dozens of that without causing memory issue. 2k^2 (16 MB/texture) would work for high-end PCs with dedicated 2GB+ GPUs but not really for systems that don’t have that.

2 Likes

They’re both the exact same MeshPart, so I wouldn’t think the UV mapping would change. Maybe it’s because the 512x512 has to store textures for all faces of the mesh, and each decal is being applied at 1024x1024 for each face? If that’s the case, then 512x512 is pretty low for for torso composite because the texture looks super noticeably low-res.

1 Like