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

Shader Development tools: syntax checking is useless

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

Environment:

OS: Windows XP SP3 Build-2600
GPU: GeForce GTX 550 Ti
Shader Development tools: 1.3.0.8592_Beta
Mali Offline Shader Compiler:  v4.0.0
Emulator: OpenGL_ES_Emulator_1.3.0.7490_Win32.msi
Eclipse: 3.7.0



Problem:

Enable Offline Shader Compile, but the syntax checking is useless.

First, i run the malisc.exe, an error occur which reported that: " lack msvcr100.dll", then i download the dll and copy to system32-dir. After that,  i run malisc.exe in cmd successfully, but the syntax checking is also useless.

Then i checked the path of malisc.exe, i tried something below to make sure the plugin(Shader Development tools) do execute the  malisc.exe:
1, Edit malisc.exe, break it;
2, Write some shader in eclipse, the save, and then an error window jump out to show some message like "bad exe format".
3, So, i think the path is correct.

With the same error-shader-file, i use malisc.exe to compile it in cmd, it report the syntax  error, but nothing happened in eclipse.

Could i enable debug mode or get a debug-version to check and supply the log?
  • Note: This was originally posted on 25th January 2013 at http://forums.arm.com

    Seems the plugin try to execute the offline compiler but lack the "--core" option.
    The log:



    Compiling shader effect ShaderEffect:
      buildSettings: [CompilerSettings basePath=E:\android\GL;compilerPath=D:\Program Files\ARM\Mali Developer Tools\Mali Offline Shader Compiler v4.0.0\bin\malisc.exe;defines=;revisionTarget=r0p1;]
      vertex sources:
        assets\shader\vertex.vert

      fragment sources:
        assets\shader\fragment.frag


    com.arm.mali.shaderdevelopmentstudio.compilercontrol.ESSLCompiler processVertexShaders

    Processing vertex shaders...

    com.arm.mali.shaderdevelopmentstudio.compilercontrol.ESSLCompiler getCompilationString

    Compilation String = '"D:\Program Files\ARM\Mali Developer Tools\Mali Offline Shader Compiler v4.0.0\bin\malisc.exe" --revision=r0p1  -v  -o nul "E:\android\GL\assets\shader\vertex.vert" --vert '

    // omit some info...


    Errors:
    VertexShader
    No core is specified



  • Note: This was originally posted on 25th January 2013 at http://forums.arm.com

    I have resolved this by using the old version "off line compiler"(v3.0).

    In Mali Offline Shader Compiler V 3.0, the user can ingore the option "--core=core". But in V 4.0, the use must specify this option, or an error will occur.

    "Mali_GPU_Shader_Development_Studio_1.3.0.8592_Beta" will excute a scipt to run the Offline Shader Compiler to get the error/waring info, then show them in eclipse.

    The compilation  command which used by Mali_GPU_Shader_Development_Studio doesn't specify the "--core" option, so it work fine with  "Mali Offline Shader Compiler V 3.0", but failed with "Mali Offline Shader Compiler V 4.0".
  • Note: This was originally posted on 25th January 2013 at http://forums.arm.com

    Hello Kiffa,

    Thank you for alerting us of this issue. We will look at fixing this as soon as possible. In the meantime, as the compiler is only used for syntax checking, it's fine to continue to use version 3.0 as you have already done so.

    Just for your information, v4.0 introduces support for Mali-T600 Series of GPUs, hence the need to be more specific about the core you wish to compile for.

    Thanks
    Anand