This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Depth texture linearization banding on Mali 400

Note: This was originally posted on 19th June 2013 at http://forums.arm.com

Hello Mali devs,

We are working on an application that performs depth buffer based post processing effects, mainly for fog. We are using 24bit depth for the main scene. However when sampling this depth, the results are very banded (see attachment) due to the non linear nature of the depth buffer and Mali400's mediump 0-1 precision (2^-10 I believe). With most depth values lying in the 0.96-1.0 range, the precision is obviously insufficient. Are there any workarounds that would allow use to leverage the non fractional range of mediump floats? I suspect there isn't however wanted to make sure as the platform does provide depth24 and depth texture extensions. The option of vertex based fogging is an alternative, however, we hope to stay away from that due to the added global cost of the technique.

Many thanks,

Stephane
Parents
  • Note: This was originally posted on 1st July 2013 at http://forums.arm.com

    Hi Stephane,

    You are correct, the Mali-T600 series GPUs support high precision in the fragment shader. So as long as you are requesting highp in the fragment shader for such devices, this should give you the precision you need.

    Happy to help,

    McGeagh

    Thanks McGeagh,

    That's what I figured. Though our app is very vertex heavy, it's probably still heavier on the pixel side. Obviously, per vertex fog does mean modifying/updating every shader in the product (and there are a lot) rather than the single post processing step, but definitely doable if we want to maintain the effect. This is a non issue on the T-604 correct? We don't have a device handy, however, I believe it does do higher precision in fragment shader than the 400-MP.

    Best,
    Stephane

Reply
  • Note: This was originally posted on 1st July 2013 at http://forums.arm.com

    Hi Stephane,

    You are correct, the Mali-T600 series GPUs support high precision in the fragment shader. So as long as you are requesting highp in the fragment shader for such devices, this should give you the precision you need.

    Happy to help,

    McGeagh

    Thanks McGeagh,

    That's what I figured. Though our app is very vertex heavy, it's probably still heavier on the pixel side. Obviously, per vertex fog does mean modifying/updating every shader in the product (and there are a lot) rather than the single post processing step, but definitely doable if we want to maintain the effect. This is a non issue on the T-604 correct? We don't have a device handy, however, I believe it does do higher precision in fragment shader than the 400-MP.

    Best,
    Stephane

Children
No data