Supporting 4096x4096 textures on different devices

I made small research about supporting of 4096x4096 textures on different devices.

iOS
Any ios device starts from iphone4s and ipad2 supports 4096x4096


(Source)
Android
Top Android GPU I took here.


Sources:

  1. http://gles3mark.appspot.com
  2. http://feedback.wildfiregames.com/report/opengl/feature/GL_MAX_TEXTURE_SIZE
  3. And many googling…

HTML5


Webstats statistics : https://webglstats.com/webgl/parameter/MAX_TEXTURE_SIZE

Hope it will be useful for somebody

Conclusion (imho)

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

21 Likes

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.

5 Likes

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.

3 Likes

One of developer shared info, that on Steam still enough PC’s that do not supports 4k atlases and he remade his game to 2k atlases.

Really? That’s surprising that many desktop GPUs don’t support larger textures. I’m assuming that it’s cheap integrated GPUs and not dedicated cards?

1 Like

Surprise for me too, but for now I have no time and motivation for checking this information. Maybe later i’ll recheck this info.

1 Like

China has a large relative market share on Steam. Lots of old PCs there. But lots of good PCs there and people who will buy games properly localized.

1 Like

Need to check this list http://store.steampowered.com/hwsurvey/videocard/ for understanding how many users have video cards that don’t support 4k textures

1 Like

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:

https://webglstats.com/webgl/parameter/MAX_TEXTURE_SIZE

That’s stats from around 30 sites. It would be interesting to get stats from game focused sites though…

2 Likes

mmm, i already has this link in main post =)

Any idea regarding the sudden drop in 8k support around 2017?

1 Like

Oh, yes you do! :flushed:

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.

3 Likes

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.

2 Likes

does anyone have actual statistics about the supporting max texture size in 2020? particularly interested in web platform.

There used to be a WebGL stats page at https://webglstats.com/webgl2/parameter/MAX_TEXTURE_SIZE but it seems like the site doesn’t work anymore.

yes, I checked that site before too. that’s why I decided to ask here, may be there are alternatives.

1 Like

up :slight_smile: same question today, especially interested in the web.

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”:

MAX_CUBE_MAP_TEXTURE_SIZE: 4096
MAX_RENDERBUFFER_SIZE: 4096
MAX_TEXTURE_SIZE: 4096
MAX_VIEWPORT_DIMS: [4096,4096]
MAX_VERTEX_TEXTURE_IMAGE_UNITS: 4
MAX_TEXTURE_IMAGE_UNITS: 8
MAX_COMBINED_TEXTURE_IMAGE_UNITS: 8
MAX_VERTEX_ATTRIBS: 16
MAX_VARYING_VECTORS: 8
MAX_VERTEX_UNIFORM_VECTORS: 128
MAX_FRAGMENT_UNIFORM_VECTORS: 64
ALIASED_POINT_SIZE_RANGE: [1,100]

Source: WebGL best practices - Web APIs | MDN

7 Likes

Thanks! phew, looks like 2048 textures size is out-of-date now!

3 Likes