RenderQueueMode: Skip

Hi there,



I need to make a node invisible but it should stay in the scene-graph for collision-checking.

I thought that setting the spatial to renderqueuemode skip would exclude it from rendering.

But somehow it is still there!? Or am I on the wrong track?



Here a test that is showing what I'm trying:

package org.tomtro.shockwave.test;

import com.jme.app.SimpleGame;
import com.jme.math.Vector3f;
import com.jme.renderer.RenderQueue;
import com.jme.renderer.Renderer;
import com.jme.scene.shape.Box;

public class SkipTest extends SimpleGame {
   
   public SkipTest()
   {
      
   }

   @Override
   protected void simpleInitGame() {
      Box b = new Box("b",new Vector3f(1,1,1),Vector3f.ZERO);
      b.setRenderQueueMode(Renderer.QUEUE_SKIP);
      b.updateRenderState();
      rootNode.attachChild(b);

      
   }
   
   public static void main(String[] args)
   {
      new SkipTest().start();
   }

}



Edit: Ok...finally I could do what I want. But not with QUEUE_SKIP (still curious about how this is working). Actually it was quite simple. I just took the node out of the scene and used it for collision-checking. My problem at the beginning was, that I added it to a node, that should collect all collision nodes but that had no worldbound so findPick didn't work....

hm, seems that the Renderqueue.skip really doesn't work like this.



But you may also set the Spatial to be culled all the time by setting

b.setCullHint(CullHint.Always);


instead of the RenderqueueMode.

Skip means it's not placed in the renderqueue, but drawn right away.

Ok,…thx for that info!