Forums - Differnet Looking

3 posts / 0 new
Last post
Differnet Looking
Jakouf
Join Date: 5 Jul 13
Posts: 2
Posted: Tue, 2013-08-06 02:36

Hello Fellows,

I have a little Problem with Adreno GPUs (Nexus 4 and Samsung Galaxy S4). The Profiler works fine but not the GPU on the devices. I have tested Mali, PowerVR and Tegra GPUs and they have not the problem.

The Profiler looks like this:
http://i.imgur.com/DRyvlg5.png

The GPU looks like this:
http://i.imgur.com/QO0Ol2h.png

The thing that the texture looks on the devices white is a problem with the Adreno GPU Driver. I have downloaded the latest Version of the driver because on stock Android 4.2.2 on the Nexus 4 the Profiler was not finding my device. With Stock it looks normal. But the blue saws look on every Adreno GPU I tested the same (SGS4 and Nexus 4).

Is there something wrong with the Z-Buffer? But I'm also wondering why the profiler is having the same problem.

 

Cheers
Jakob

  • Up0
  • Down0
Jakouf
Join Date: 5 Jul 13
Posts: 2
Posted: Sat, 2013-08-17 00:47

Hello,

I finally found the problem. Under Andorid a GLSurfaceView was created on Adreno GPUs with a 16 bit precise Z-Buffer. If you force the Depth Buffer to be 24 bit precise it work. But I wonder why every other GPU does this as a standard and adreno GPUs need an extra push to be good.

You can force this with GLSurfaceView if you just insert this in before you set the renderer.

mGLSurfaceView.setEGLConfigChooser(8, 8, 8, 8, 24, 8);

 

Cheers
Jakob

  • Up0
  • Down0
mhfeldma Moderator
Join Date: 29 Nov 12
Posts: 310
Posted: Mon, 2013-08-19 11:34

Hi Jakob.

Glad you found a solution.  By the looks of the images, it seems like there's some z-fighting going on (two pieces of geometry sharing the same value).  In addition to increasing the depth buffer precision, you might be able to fix the problem by adjusting the geometry.

 

If you indeed need 24 bits of depth, you can also use the setEGLConfigChooser method (as you have), or use an EGLConfigChooser and interate throught the possible available configurations and chose an appropriate one.

 

 

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.