Targeting devices with different resolutions is another problem. But high resolutions are not the only issue for mobile developers. Fragment shader invocations will increase when targeting high resolutions. This cost is compounded by the fact that mobile platforms are targeting higher resolutions with each new release. Calculating the final color for each pixel on the screen takes a lot of processing power and time and can be prohibitively expensive. Of course, this makes sense because the fragment shader is where lighting calculations, texture sampling, and post-processing effects are computed.
When doing performance analysis on games and graphics workloads, processing the fragment (or pixel) shader seems to be a major performance bottleneck. Dynamic Resolution Rendering on OpenGL* ES 2.0 Ĭode Sample: dynamic-resolution.zip