Since October 2022, I’ve been doing a lot of work with textures - upscaling and generating PBR (fancy) maps. Over the time, I’ve made quite a few observations about how different texture scales look in the game.
In general terms, the game ships with what I’ll arbitrarily call Half-K textures; that is, textures that are generally 512x512 or smaller. Firstly, any texture less than 256x256 in size should probably upscaled to at least that size (or some dimensional variant thereof - the smallest axis of the texture is 256 pixels). Although small, these textures don’t look too bad on most resolutions.
Using 1K textures (textures that are 1024x1024 or some multiple thereof maximum - 512x1024, etc.) really gains you nothing over Half-K textures. The models look the same as if you used 512x512 as your base size).
The next size is 2K or 2048x2048 as the base size. At this size, you start to see visual improvements in the models and the hits to performance are negligible. Details tend to be much crisper, especially if using PBR maps generated from this scale.
The final size is 4K or 4096x4096 as the base size. At this size, you see enormous visual improvements, especially if using PBR maps, but at the expense of performance. The greatest performance hit is with PLT textures. The more parts-based creatures on the screen at the same time, the harder the performance hit.
All that said, there is one major thing you can do to mitigate performance issues: generate your normal and spec maps from whatever texture base size you’re using - 1K or 2K or 4K - and then reduce them at least one size step downward. So, if using 4K diffuse maps, you can use 1K or 2K normal and spec maps.
If you’re still taking a performance hit, reduce ALL the textures down another size step until you reach a point where the performance hit is negligible. OH, and do use DDS textures, not TGA, and do use NWN Crunch to compress them.
These are just my observations and I’m by no means an expert. Thus, I’d love to hear anyone else’s observations or opinions.