Little spotlight problem... [SOLVED]

i got a little spotlight problem… i did some model in blender export and load into jme

everything work as expected… i added some light and spot to do some testing and a box

as a floor but the spotlight doesn'T show on the box… but it's showing well on other model…



my scene is like some cow walking around and some UFO flying around the UFO have the spotlight

to the ground and when it pass by a cow the spot is showing… but nothing on the ground…



ls = lightstates (the one in simplegame i didnt touchted it…)

rn = rootnode…



        SpotLight sp = new SpotLight();
        sp.setDirection(new Vector3f(0,-100,0));
        sp.setDiffuse(new ColorRGBA(1f,0f,1f,1f));
        sp.setAmbient(new ColorRGBA(1f,0f,1f,1f));  //test
        sp.setSpecular(new ColorRGBA(1f,0f,1f,1f));  //test
        sp.setAngle(90);
//        sp.setAttenuate(true);
//        sp.setConstant(2);
        sp.setExponent(10);
        sp.setLocation(fx);
        sp.setEnabled(true);
        mSpotList.add(sp);
        ls.attach(sp);

       
       
        rn.attachChild(st);
        rn.updateRenderState();




here a little screen to show what i'm asking...



we can clearly see the pink light on the fence but nothing on the box (ground, simple Box with material)



        Box b = new Box("planche", new Vector3f(-200,-1,-200), new Vector3f(200,0,200));
        b.setLocalTranslation(0,-3,0);
        MaterialState ms = display.getRenderer().createMaterialState();

        ms.setEmissive(new ColorRGBA(0, 0.1f, 0, 1 ));
        b.setRenderState(ms);
        b.setSolidColor(new ColorRGBA(0, 0.1f, 0, 1 ));
        rootNode.attachChild(b);
        rootNode.updateRenderState();



if you need something else just ask...
by the time thank you...

One thing to make note of if that lighting calculations (unless you are doing more advanced stuff in shaders) are done at the vertices of objects and the results are averaged across the face of the triangles.  Your huge box has very few vertices and they are way off at the corner.  Thus the spot light is not reaching them (unless you moved it off above one of the corners) and does not show an effect on your ground.



You could change your floor to be a flat TerrainBlock or TerrainPage instead so that you have a grid of vertex points across your ground and then the spotlight should show up better.

oh… didnt knew that… thank i'm gonna try it and report back

yay it's a little sluggish but it'S working pretty well…



many thank…