Imagination PowerVR SDK Blog

DeferredShading Sample



Dear Team

DeferredShading is one of the top sample in the SDK, really beautifull for the usage of :

cache of pUniformMapping

Nice usage of PFX and custom semantic approach (more elaborate the intro Pfx demo , of course :slight_smile: )

Quad Shading technique

i tried to make it work with other Meshes but unfortunately the program render with gl error ,

i would like to know that the bi-tangent calculation is mandatory (checked during the export ) and did you produce your mesh with not documented parameters ???

will it be a good idea to put more information in your /Documentation/Whitepaper section about it ?

is this technic more performant than a multipass rendering , and do you have a kind of benchmark on SGX mesuring this aspect ??



for good doc about the subject this link is interesting


Hi David,

Sorry or not answering this one sooner.

  1. Yes, you need to export your meshes with tangents. The tangents are used to generate the GBuffer

  2. Agreed. It should be better documented

  3. Do you mean using MRTs vs. rendering in multiple passes? MRTs are more efficient, as vertex is only done once instead of n times. We do not have any benchmark figures for this. You can get a rough idea by comparing the performance of the OGLES3 (with MRTs) and OGLES2 (without MRTs) version of this Example



First of all , thank for your answer.

what i mean was more about the usage of the GBUFFER , is it really efficient ?

how did you prepare the assets for the demo ? (i mean any specific hidden parameter etc etc )

i tried to reproduce from scratch ,but…wow not easy for me, and i know your tools a bit :slight_smile:

thank for the learning here



Hi David,

Our Deferred Rendering implementation is completely optimized. However, the technique is only really worth using if you have many dynamic lights.If you only have a small number of lights in your scene, the additional computational overhead required for this rendering technique is unlikely to be worthwhile.

The only difference between the parameters used for the assets in this demo and those used in others is that tangents have been exported. You can use PVRShaman to open the POD & inspect the data contained in it.




thanks alot + the description you gave me help alot