Shaders problem on ATI Mobility X1400

Hello,



I’m having this error when running the JME3 examples on my laptop:



EVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]

com.jme3.renderer.RendererException: Shader link failure, shader:Shader[language=GLSL100, numSources=2, numUniforms=19, shaderSources=[ShaderSource[name=Common/MatDefs/Light/Lighting.vert, defines, type=Vertex], ShaderSource[name=Common/MatDefs/Light/Lighting.frag, defines, type=Fragment]]] info:Fragment shader(s) failed to link, vertex shader(s) linked.



My laptop has the ATI Mobility X1400 running on Windows7

Can anyone please pinpoint the solution to this error?



Thank you!

"Fragment shader(s) failed to link, vertex shader(s) linked. "



This is the error that makes me want to track down the ATI driver writers and put nasty things in their coffee.



I hope you figure out what the issue is because I have a lot of Mythruna users that hit this same problem. I don’t have the hardware myself so I can’t systematically try things to see what random thing fixes the problem… basically, providing myself the important information that ATI didn’t feel was necessary: like, what actually failed.

You can try updating your drivers, or downgrading them. But like Paul said, not much to tell from that error unfortunately.

-1 ATI

I guess a problem with uniform count or features, at least the x1400 is kinda ancient.

@EmpirePhoenix said:
I guess a problem with uniform count or features, at least the x1400 is kinda ancient.


Hmmm... I wonder if the hello world test that only uses Unshaded works...

The lighting shader may use more than 32 varying components, depends on which defines you specify.



Many GPUs simply raise a linker error when more than 32 varying components are used.

@Momoko_Fan said:
The lighting shader may use more than 32 varying components, depends on which defines you specify.

Many GPUs simply raise a linker error when more than 32 varying components are used.


I only count 30 in mine and that's in the absolute worst case scenario. Maybe some cards don't even support that many. I may have to do some experiments...
@pspeed said:
I only count 30 in mine and that's in the absolute worst case scenario. Maybe some cards don't even support that many. I may have to do some experiments...

The minimum is 32 floats. You cannot claim to support GLSL 1.0 specification otherwise.