Today, almost all modern devices are supported 4096x4096 textures. If you have no plans to supports really old devices you can use 4k atlases instead 2k
Great write up! I want to add that you may also take memory consumption into account. A 4k texture is 4 times as big in memory compared to a 2k one. So it could still be worth to use a 2k texture on high end devices if you can fit everything from a scene on it and thus avoid having them all in memory.
Oversimplified example: If your game has 4 “screens” that all uses about 2k of textures each. You could add them all to a 4k texture and have all that in memory at all times or you can set your atlases up so that each “screen” uses a 2k texture. In the first case we have a bit over 64MB of textures in memory (assuming 32-bit color) and in the second case we have a bit over 16MB in memory the downside being that we have to load the atlases in and out (and could also a bit hard to work with).
Of course if memory isn’t a problem for you than you don’t have to think about this at all.
Fully agree with you, of course! I told only about possibility of using 4k atlases when it really need for example when you have 5 2k atlases that can be one 4k etc.
It’s only about possibility to run game with 4k atlases on devices in case when developer sure that he need 4k.
Yep, quite a good list. I’m sure it’s possible to write a script that makes the lookup. Looking at WebGL stats in general will give information about max texture size as well:
Ok, I asked him to provide me more info, and he told that it was in 2014. That mean that this question have to be rechecked before make some conclusion.
Ah, ok. And based on the WebGL stats that was around 6% of the stats for 2014. It is unlikely that Steam players have worse gaming rigs than the average WebGL stats user, but anyway, let’s say that the number was three times higher for Steam users, meaning 18% of users. In 2014 that was surely worth the effort, but it’s probably the case that the number around 3-5% today in 2017. But checking against the Steam list you provided will verify this.
Mozilla writes in their WebGL best practices that “The minimum requirements for WebGL are quite low. In practice, effectively all systems support at least the following”: