I’m getting an error when I try to collide with an unshaded geometry.
Runtime: java.lang.IllegalArgumentException: Expected a Int value!
at com.jme3.shader.Uniform.setValue(Uniform.java:206)
at com.jme3.material.Material.updateShaderMaterialParameters(Material.java:810)
at com.jme3.material.Material.render(Material.java:968)
at com.jme3.renderer.RenderManager.renderGeometry(RenderManager.java:614)
at com.jme3.renderer.queue.RenderQueue.renderGeometryList(RenderQueue.java:266)
at com.jme3.renderer.queue.RenderQueue.renderQueue(RenderQueue.java:305)
at com.jme3.renderer.RenderManager.renderViewPortQueues(RenderManager.java:877)
at com.jme3.renderer.RenderManager.flushQueue(RenderManager.java:779)
at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1108)
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)
My code:
private void createBlock(float x, float y, float z) {
Geometry g = new Geometry("block", new Box(blockSize*0.5f, blockSize*0.5f, blockSize*0.5f));
g.setLocalTranslation(x, y, z);
Material m = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
int tex = ThreadLocalRandom.current().nextInt(blockTexs.length);
m.setTexture("ColorMap", assetManager.loadTexture("Textures/"+blockTexs[tex]));
/*m.setBoolean("UseMaterialColors", true);
m.setColor("Ambient", ColorRGBA.randomColor());
m.setColor("Diffuse", ColorRGBA.Green);*/
g.setMaterial(m);
//Mesh mesh = new Mesh();
//g.setMesh(mesh);
//bulletAppState.getPhysicsSpace().add(mesh);
RigidBodyControl p = new RigidBodyControl(0);
g.addControl(p);
bulletAppState.getPhysicsSpace().add(p);
g.setShadowMode(RenderQueue.ShadowMode.Receive);
//rootNode.attachChild(g);
blocks.attachChild(g);
}
As soon as I enable lighting for this geometry, the problem goes away.