Built in shader does not compile on one of my PC

Hello all,

As i’m going to vacation, i have installed JME on my laptop and checkouted my personnal project’s git, which works well on my other two computers.
But on the laptop, i have this error:

 Uncaught exception thrown in Thread[jME3 Main,5,main]
RendererException: compile error in: ShaderSource[name=Common/MatDefs/Post/Overlay.frag, defines, type=Fragment, language=GLSL150]
Fragment shader failed to compile with the following errors:
WARNING: 0:61: warning(#239) Declaration should include a precision qualifier or the default precision should have been previously declared
ERROR: 0:62: error(#155) Internal error wrong operand type built in unary operator function.  Type: in sampler2DMS
ERROR: error(#273) 1 compilation errors.  No code generated

The shader implied “Common/MatDefs/Post/Overlay.frag” is not present in my code, so i don’t know what i should do.
I have installed exactly the same version of JME as in others computers (3.2.1-stable-sdk3).

Also, that project worked well last year with this laptop, but with an older version of JME (from 2016).

Here is some information about my PCs:

  • laptop (where it don’t works) is Windows 7 with a Radeon GPU
  • others computers have Windows 8 and 10 with both Nvidia GPUs on them

Does anyone already have a similar issue ? is there a way to fix it ?

Thanks in advance,

Ga3L

It would help if you told us what Radeon card it was, and what post processing effect was causing it by removing them one by one

So here is information about my GPU:

OpenGL Renderer Information

  • Vendor: ATI Technologies Inc.
  • Renderer: ATI Mobility Radeon HD 5470
  • OpenGL Version: 3.2.9232
  • GLSL Version: 1.50
  • Profile: Compatibility

Here is my code causing the issue:

FilterPostProcessor fpp = new FilterPostProcessor(assetManager);
TranslucentBucketFilter tbf = new TranslucentBucketFilter();
fpp.addFilter(tbf);
viewPort.addProcessor(fpp);

And also, here is the full error message:

GRAVE: Uncaught exception thrown in Thread[jME3 Main,5,main]
com.jme3.renderer.RendererException: compile error in: ShaderSource[name=Common/MatDefs/Post/Overlay.frag, defines, type=Fragment, language=GLSL150]
Fragment shader failed to compile with the following errors:
WARNING: 0:61: warning(#239) Declaration should include a precision qualifier or the default precision should have been previously declared
ERROR: 0:62: error(#155) Internal error wrong operand type built in unary operator function.  Type: in sampler2DMS
ERROR: error(#273) 1 compilation errors.  No code generated

	at com.jme3.renderer.opengl.GLRenderer.updateShaderSourceData(GLRenderer.java:1269)
	at com.jme3.renderer.opengl.GLRenderer.updateShaderData(GLRenderer.java:1296)
	at com.jme3.renderer.opengl.GLRenderer.setShader(GLRenderer.java:1360)
	at com.jme3.material.logic.DefaultTechniqueDefLogic.render(DefaultTechniqueDefLogic.java:94)
	at com.jme3.material.Technique.render(Technique.java:166)
	at com.jme3.material.Material.render(Material.java:974)
	at com.jme3.renderer.RenderManager.renderGeometry(RenderManager.java:614)
	at com.jme3.post.FilterPostProcessor.renderProcessing(FilterPostProcessor.java:230)
	at com.jme3.post.FilterPostProcessor.renderFilterChain(FilterPostProcessor.java:314)
	at com.jme3.post.FilterPostProcessor.postFrame(FilterPostProcessor.java:334)
	at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1114)
	at com.jme3.renderer.RenderManager.render(RenderManager.java:1158)
	at com.jme3.app.SimpleApplication.update(SimpleApplication.java:253)
	at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:151)
	at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:197)
	at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:232)
	at java.lang.Thread.run(Thread.java:748)