issue with extension GL_OES_standard_derivatives

This topic contains 4 replies, has 2 voices, and was last updated by  Joe Davis 7 years, 3 months ago.

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #30273

    Robin
    Member

    Hello everyone,

    I’ve spent a whole day trying to figure out how to enable extension GL_OES_standard_derivatives. But i encountered some weird issues.

    Basically, i want to call built-in functions ( dFdx(), dFdy() , fwidth()) in my fragment shader(See below).

            precision mediump float;

            #extension GL_OES_standard_derivatives : enable

            varying vec3 myVec;

            uniform vec4 vColor;

            void main() {n”

               vec3 px = dFdx(myVec);

               vec3 py = dFdy(myVec); // this line can not compile.

               gl_FragColor = vColor;

            }

    Whenever i add dFdy() , fwidth() to the shader, the fragment shader fails to compile with error message “Compile Failed”. But the strange thing is dFdx() can be compiled and linked successfully. I work on beagleboard C4 with Angstrom linux distro.

    Could anyone give me a pointer on how to resolve this issue.

    Thanks for any help or advice!

    #34301

    Robin
    Member

    Add some more details.

    When running on board, the shader compiler just said “Compile Failed” with no verbosity so I am stuck here. Do not know what is wrong with it.

    Since dFdx() can be compiled and linked successfully, i guess the extension has been enabled, but some built-in functions (dFdy() , fwidth()) are missing.

    BTW, the fragment shader can be compiled successfully on PC Emulation.

    I use beagle board C4 (OMAP3530 – 720 MHz ARM Cortex A8 + PowerVR SGX530 GPU )

    #34302

    Joe Davis
    Member

    Hi Robin,

    This sounds like a potential bug in the online compiler. Unfortunately, providing you with the offline compiler for this driver will be unlikely to solve your problem, as the compiler used is common to both.

    I’ve managed to compile your shader without any problems using an offline compiler for an old 1.3 driver. If you can tell me the particular driver version you are using on your Beagle I should be able to look into this further.

    #34303

    Robin
    Member

    Thanks for your prompt reply, Joe.

    The driver i use is 1.4.14.2616.

    BTW, where can i get the offline compiler? So that i can test if it works with the binary shaders.

    #34304

    Joe Davis
    Member

    I’ve just tried compiling your shader code with the offline compiler for driver 1.4.14.2616.

    Unfortunately, I encountered the same bug, so providing you with the offline compiler will not help you with this issue.

    Strangely, this bug only seems to be limited to this particular driver build and I did not have the same problem with earlier (1.04.14.2514) and later (1.04.14.2664) compilers.

    If you need this functionality, the only options I can think of it to highlight this issue with TI and request newer drivers, or roll back to an earlier version of the drivers where this bug is not present (FYI, I managed to compile your shader with 1.03.13.1674 compiler as well).

    Hope this helps,

    Joe

Viewing 5 posts - 1 through 5 (of 5 total)
You must be logged in to reply to this topic.