Shader link failure when running JME Tests

Hi,

hopefully this is not too stupid, I have just started to use JME…

Anyway, I am using svn with Eclipse and checked out yesterday (revision 7941 for “engine”).

Build runs just fine.

But when I try to run e.g. “TestHoverTank.java” (revision 6955) I get following output:

[java]29.07.2011 16:44:36 com.jme3.system.JmeSystem initialize

INFO: Running on jMonkey Engine 3 Alpha 0.6

29.07.2011 16:44:36 com.jme3.system.Natives extractNativeLibs

INFO: Extraction Directory #1: file:/C:/Users/jens/workspace%20JavaMonkeyEngine/JmeTest2/jme_lib/

29.07.2011 16:44:36 com.jme3.system.Natives extractNativeLibs

INFO: Extraction Directory #2: C:Usersjensworkspace JavaMonkeyEngineJmeTest2

29.07.2011 16:44:36 com.jme3.system.Natives extractNativeLibs

INFO: Extraction Directory #3: C:Usersjensworkspace JavaMonkeyEngineJmeTest2

29.07.2011 16:44:36 com.jme3.system.Natives extractNativeLib

WARNUNG: Cannot locate native library: windows/bulletjme64.dll

29.07.2011 16:44:36 com.jme3.system.lwjgl.LwjglAbstractDisplay run

INFO: Using LWJGL 2.7.1

29.07.2011 16:44:36 com.jme3.system.lwjgl.LwjglDisplay createContext

INFO: Selected display mode: 640 x 480 x 0 @0Hz

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Adapter: atiumd64

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Driver Version: 8.14.10.647

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Vendor: ATI Technologies Inc.

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: OpenGL Version: 2.1.8545 Release

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Renderer: ATI Radeon Xpress 1200 Series

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: GLSL Ver: 1.20

29.07.2011 16:44:37 com.jme3.system.lwjgl.LwjglTimer <init>

INFO: Timer resolution: 1.000 ticks per second

29.07.2011 16:44:37 com.jme3.renderer.lwjgl.LwjglRenderer initialize

INFO: Caps: [FrameBuffer, FrameBufferMRT, FrameBufferMultisample, OpenGL20, OpenGL21, ARBprogram, GLSL100, GLSL110, GLSL120, FloatTexture, TextureCompressionLATC, NonPowerOfTwoTextures, VertexBufferArray]

29.07.2011 16:44:37 com.jme3.asset.DesktopAssetManager <init>

INFO: DesktopAssetManager created.

29.07.2011 16:44:37 com.jme3.renderer.Camera <init>

INFO: Camera created (W: 640, H: 480)

29.07.2011 16:44:37 com.jme3.renderer.Camera <init>

INFO: Camera created (W: 640, H: 480)

29.07.2011 16:44:37 com.jme3.input.lwjgl.LwjglMouseInput initialize

INFO: Mouse created.

29.07.2011 16:44:37 com.jme3.input.lwjgl.LwjglKeyInput initialize

INFO: Keyboard created.

29.07.2011 16:44:38 com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread

INFO: AudioRenderer supports 64 channels

29.07.2011 16:44:38 com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread

INFO: Audio effect extension version: 1.0

29.07.2011 16:44:38 com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread

INFO: Audio max auxilary sends: 1

29.07.2011 16:44:38 com.jme3.material.MaterialDef <init>

INFO: Loaded material definition: Unshaded

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Gui Node)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

29.07.2011 16:44:38 com.jme3.scene.Node attachChild

INFO: Child (Statistics View) attached to this node (Gui Node)

29.07.2011 16:44:38 com.jme3.scene.plugins.ogre.MeshLoader load

WARNUNG: Cannot locate Models/HoverTank/Tank2.material for model Models/HoverTank/Tank2.mesh.xml

29.07.2011 16:44:38 com.jme3.material.MaterialDef <init>

INFO: Loaded material definition: Phong Lighting

29.07.2011 16:44:44 com.jme3.scene.Node attachChild

INFO: Child (Tank2-geom-1) attached to this node (Tank2-ogremesh)

29.07.2011 16:44:44 com.jme3.scene.Node attachChild

INFO: Child (Tank2-ogremesh) attached to this node (Root Node)

29.07.2011 16:44:44 com.jme3.renderer.Camera <init>

INFO: Camera created (W: 1, H: 1)


Bloom UI Debugger
-- blur Scale : press Y to increase, H to decrease
-- exposure Power : press U to increase, J to decrease
-- exposure CutOff : press I to increase, K to decrease
-- bloom Intensity : press O to increase, P to decrease
29.07.2011 16:44:44 com.jme3.material.MaterialDef <init>
INFO: Loaded material definition: Bloom
29.07.2011 16:44:44 com.jme3.material.MaterialDef <init>
INFO: Loaded material definition: Bloom
29.07.2011 16:44:44 com.jme3.material.MaterialDef <init>
INFO: Loaded material definition: Bloom
29.07.2011 16:44:44 com.jme3.material.MaterialDef <init>
INFO: Loaded material definition: Bloom Final
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_SpecularMap is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_Shininess is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_NormalMap is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_DiffuseMap is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_UseMaterialColors is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_Ambient is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_Diffuse is not declared in shader.
29.07.2011 16:44:44 com.jme3.renderer.lwjgl.LwjglRenderer updateUniformLocation
INFO: Uniform m_Specular is not declared in shader.
29.07.2011 16:44:44 com.jme3.app.Application handleError
SCHWERWIEGEND: 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.
at com.jme3.renderer.lwjgl.LwjglRenderer.updateShaderData(LwjglRenderer.java:1108)
at com.jme3.renderer.lwjgl.LwjglRenderer.setShader(LwjglRenderer.java:1143)
at com.jme3.material.Material.renderMultipassLighting(Material.java:776)
at com.jme3.material.Material.render(Material.java:1002)
at com.jme3.renderer.RenderManager.renderGeometry(RenderManager.java:656)
at com.jme3.renderer.queue.RenderQueue.renderGeometryList(RenderQueue.java:301)
at com.jme3.renderer.queue.RenderQueue.renderQueue(RenderQueue.java:357)
at com.jme3.renderer.RenderManager.renderViewPortQueues(RenderManager.java:893)
at com.jme3.renderer.RenderManager.flushQueue(RenderManager.java:849)
at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1125)
at com.jme3.renderer.RenderManager.render(RenderManager.java:1162)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:264)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:144)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:185)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:218)
at java.lang.Thread.run(Unknown Source)[/java]

I already checked my graphics card and it supports OpenGL 2.1 (ATI Radeon XPress 1200).
I tried many other of the JME examples and they do not work either.
Any hints?
Any additional info that I would need to provide?
Thanks in advance,
Hans

Obviously your system is fubard, what can we do about it? Insall the latest drivers, if that fails go to the guys where you bought it and slap it around their head.

Wow, is there really nobody able to give me hint what could be wrong in my system?



Of course I checked that I have the most recent driver. And of course I already re-installed the driver after having the old one removed and even used driver sweeper just to make sure.

Still the same problem.



Also I checked with OpenGL Extension Viewer. All info about my graphics is dispayed correctly, but when I try the rendering I get following error:







Unfortunately it is in German :smiley: but it says something about access to some alternative memory location which normally only happens if the planned memory is damaged.

So of course I already checked my memory (memtest86+) which revealed no problems and I would not know that it would be possible to check the graphic card’s memory itself.



After that I also ran FurMark test and that worked without any error messages! The score is “71” which is very low I believe, but I do not know whether that is already a sign that something is broken.



GPU-Z also revealed nothing unusual.



PLEASE, I am starting to get desperate. I would really like to start using jME but I can’t :cry: :cry:

After some further investigation I understand that shader only starts shading once a light source is added. So I tried to remove the light source from one example (I used the HelloAsset from the introductionary tutorials) and the code works (except of course you do not see the ninja since there is no light for it…).

So it seems my shading does not work at all.

:?:?:?

So now I installed the jME SDK and I get this error message when I start the IDE:



What is wrong here?

:cry:



Here the first lines of the output window of the jMP:



Running on jMonkey Engine 3 Alpha 0.6
Extraction Directory #1: file:/C:/Program%20Files/jmonkeyplatform/jmonkeyplatform/modules/ext/
Extraction Directory #2: C:Usersjens.jmonkeyplatform
Extraction Directory #3: C:Program Filesjmonkeyplatform
DesktopAssetManager created.
EDT: Creating OGL thread.
Using LWJGL 2.7.1
Display created.
Adapter: atiumd64
Driver Version: 8.14.10.647
Vendor: ATI Technologies Inc.
OpenGL Version: 2.1.8545 Release
Renderer: ATI Radeon Xpress 1200 Series
GLSL Ver: 1.20

Thanks for your answer, normen!



Well, my system can not really be called fubar. Everything works…except jME and the rendering in OpenGL Extension Viewer.



Even Java3D works without any problems!!!



Also I do not expect any of you to do anything about my system :wink:

I am just seaching for some clever hints, so maybe I can rest this case and accept that my Laptop (Dell Latitude XP) does not support some 3D features. I am just so confused because Java3D works and OpenGL test programms all confirm that OpenGL is supported up to version 2.1. How can that be?



The only remarkable (low level) difference between Java3D and jME is that jME uses LWJGL and I believe Java3D uses JOGL. Can LWJGL cause problems while JOGL does not?

Can you try running TestSimpleLighting and see what the result is?

Hi Momoko Fan,



since jME SDK throws the above given error message already when started, I tried TestSimpleLighting in Eclipse.

Here is the result:



03.08.2011 08:58:40 com.jme3.system.JmeSystem initialize

INFO: Running on jMonkey Engine 3 Alpha 0.6

03.08.2011 08:58:40 com.jme3.system.Natives extractNativeLibs

INFO: Extraction Directory #1: file:/C:/Users/jens/workspace%20JavaMonkeyEngine/jme3/bin/com/jme3/system/

03.08.2011 08:58:40 com.jme3.system.Natives extractNativeLibs

INFO: Extraction Directory #2: C:Usersjensworkspace JavaMonkeyEnginejme3

03.08.2011 08:58:40 com.jme3.system.Natives extractNativeLibs

INFO: Extraction Directory #3: C:Usersjensworkspace JavaMonkeyEnginejme3

03.08.2011 08:58:40 com.jme3.system.Natives extractNativeLib

WARNUNG: Cannot locate native library: windows/bulletjme64.dll

03.08.2011 08:58:41 com.jme3.system.lwjgl.LwjglAbstractDisplay run

INFO: Using LWJGL 2.7.1

03.08.2011 08:58:41 com.jme3.system.lwjgl.LwjglDisplay createContext

INFO: Selected display mode: 640 x 480 x 0 @0Hz

03.08.2011 08:58:43 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Adapter: atiumdag

03.08.2011 08:58:44 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Driver Version: null

03.08.2011 08:58:44 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Vendor: ATI Technologies Inc.

03.08.2011 08:58:44 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: OpenGL Version: 2.1.7537 Release

03.08.2011 08:58:44 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: Renderer: ATI Radeon Xpress 1250

03.08.2011 08:58:44 com.jme3.system.lwjgl.LwjglContext printContextInitInfo

INFO: GLSL Ver: 1.20

03.08.2011 08:58:44 com.jme3.system.lwjgl.LwjglTimer

INFO: Timer resolution: 1.000 ticks per second

03.08.2011 08:58:44 com.jme3.renderer.lwjgl.LwjglRenderer initialize

WARNUNG: Your graphics card does not support non-power-of-2 textures. Some features might not work.

03.08.2011 08:58:44 com.jme3.renderer.lwjgl.LwjglRenderer initialize

INFO: Caps: [FrameBuffer, FrameBufferMRT, FrameBufferMultisample, OpenGL20, OpenGL21, ARBprogram, GLSL100, GLSL110, GLSL120, FloatTexture, TextureCompressionLATC]

03.08.2011 08:58:46 com.jme3.asset.DesktopAssetManager

INFO: DesktopAssetManager created.

03.08.2011 08:58:47 com.jme3.renderer.Camera

INFO: Camera created (W: 640, H: 480)

03.08.2011 08:58:47 com.jme3.renderer.Camera

INFO: Camera created (W: 640, H: 480)

03.08.2011 08:58:47 com.jme3.input.lwjgl.LwjglMouseInput initialize

INFO: Mouse created.

03.08.2011 08:58:47 com.jme3.input.lwjgl.LwjglKeyInput initialize

INFO: Keyboard created.

03.08.2011 08:58:48 com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread

INFO: AudioRenderer supports 64 channels

03.08.2011 08:58:48 com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread

INFO: Audio effect extension version: 1.0

03.08.2011 08:58:48 com.jme3.audio.lwjgl.LwjglAudioRenderer initInThread

INFO: Audio max auxilary sends: 1

03.08.2011 08:58:48 com.jme3.material.MaterialDef

INFO: Loaded material definition: Unshaded

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Gui Node)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (BitmapFont) attached to this node (null)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (null) attached to this node (Statistics View)

03.08.2011 08:58:50 com.jme3.scene.Node attachChild

INFO: Child (Statistics View) attached to this node (Gui Node)

03.08.2011 08:58:51 com.jme3.material.MaterialDef

INFO: Loaded material definition: Phong Lighting

03.08.2011 08:58:53 com.jme3.scene.plugins.OBJLoader createGeometry

WARNUNG: OBJ mesh Teapot-geom-0 doesnt contain normals! It might not display correctly

03.08.2011 08:58:53 com.jme3.scene.Node attachChild

INFO: Child (Teapot-geom-0) attached to this node (Teapot-objnode)

03.08.2011 08:58:54 com.jme3.scene.Node attachChild

INFO: Child (Teapot-geom-0) attached to this node (Root Node)

03.08.2011 08:58:54 com.jme3.scene.Node attachChild

INFO: Child (Light) attached to this node (Root Node)

03.08.2011 08:58:54 com.jme3.app.Application handleError

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

com.jme3.renderer.RendererException: Shader link failure, shader:Shader[language=GLSL100, numSources=2, numUniforms=15, 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.




If I comment out the lines of code where light sources are added to the scene like so:



[java] pl = new PointLight();

pl.setColor(ColorRGBA.White);

pl.setRadius(4f);

// rootNode.addLight(pl);



DirectionalLight dl = new DirectionalLight();

dl.setDirection(new Vector3f(-1, -1, -1).normalizeLocal());

dl.setColor(ColorRGBA.Green);

// rootNode.addLight(dl);

[/java]





then the program runs…but of course without light sources:



@kaiservadar said:
Unfortunately, my wonderful, if not brand new, notebook computer that I love and does everything wonderfully, a toshiba satellite P205D-S7802, has an ati radeon x1200 which does not support the kind of shading that JME uses and simply does not have the capability and likely never will.

Oh my.. the piles of shit we have to read through.. xD If you want to support low-level OpenGL just enable OpenGL1, obviously theres no support for shaders in OpenGL1 so you'll have to live without some post effects. And yes, card manufacturers only fix their drivers for the big games and not for jMonkeyEngine, just buy a mac if you want working software and hardware and not prototypes :P Anyway I am happy you decided not to hang out here xD

@normen



What he is saying is that the free engine you and all the core team spend hours of your life working on, and then give away for free, for others to make money from if they so choose, is not good enough. And he is going to find a better free engine rather than attempt to contribute to jMonkeyEngine and make it better.



Really, the thing is that the level of technical skill required to make anything from jMonkeyEngine is quite high. This isnt a failing of the SDK or the engine - 3D programming is just difficult by nature. Even with something like jMonkeyEngine where (most) of the hard work is done for you, you are still required to have good knowledge of the 3d pipeline and 3d maths. And 3d hardware. And even then, the problems I have to solve during game development that are not related to 3D graphics - ie which data structure to use or how to generate a random level - are an order of magnitude more difficult to solve than the problems I deal with in business application programming. Thats why its fun!

1 Like
@ancalagon said:
What he is saying is that the free engine you and all the core team spend hours of your life working on, and then give away for free, for others to make money from if they so choose, is not good enough. And he is going to find a better free engine rather than attempt to contribute to jMonkeyEngine and make it better.

Godspeed then ;)

Thank you for your replies and your support. I just see all of the hard work and hours going into this project, but then I feel that some of the other people that may not be highly experienced computer programmers or that might not have the best equipment are sometimes a little bit ignored. The only problem with this is that for JME and other open source software to gain greater acceptance and become respected by major developers, it needs to work on older computers and be very stable across a majority of platforms.

Yes, I was a little bit of a jerk. But I saw other people being nice and being ignored. I got some attention to the problem. In the long run, if you want to make a better product for many people to use, you have to spend some time making it work with older equipment. I want JME to be good enough. That’s why I said what I said. Normen is probably right about using an older OpenGL version. That is one good workaround. I also found that simply replacing the ninja object with a teapot object in HelloAssets gets the example running. In general, developers that want JME-based apps to work well with a wider variety of equipment can dumb-down the app with simpler mesh models when running on older equipment.



My apologies for being a jerk. I realize that many people have indeed put many hours into making this excellent product. I just wanted to encourage you to pay a little more attention to stability and wider compatibility. I realize that I insulted a fine group of professionals who, it turns out, are willing to put in the effort to make a very good product. I didn’t mean to put you down personally. Really, I have become so accustomed to dealing with stuck up people that won’t give me the time of day that here i’ve become one myself.



“Whoever fights monsters should see to it that in the process he does not become a monster. And if you gaze long enough into an abyss, the abyss will gaze back into you.”

― Friedrich Nietzsche

3 Likes

@kaiservadar: Glad you see this in a similar way :slight_smile: The issue simply is that theres an unsurmountable amount of work to be done if we really wanted to fix some of these kinds of issues. If every second driver is broken somehow its very hard to code around all issues. We test the shaders to be 100% compatible to the GLSL specs but theres always gonna be some issue popping up. For low-tier graphics, use the OpenGL1 support layer. jME3 isn’t really meant to be compatible to low-level graphics, its designed for GPU’s that properly support GLSL, think Crysis instead of FarmVille :wink:

1 Like