Renderer.QUEUE_ORTHO

Hi dudes,



I want to render the title of my game as follows:



protected void initGame() {
       
        camera.update();
       
        scene = new Node("Scene graph root node");
       
        userInterface = new Node( "User interface" );
        userInterface.setRenderQueueMode( Renderer.QUEUE_ORTHO );
        userInterface.setCullMode( Spatial.CULL_NEVER );
        userInterface.setLightCombineMode( LightState.OFF );
       
        // TODO: Custom cursor, anyone?
        MouseInput.get().setCursorVisible( true );
       
        // Title Quad
        Node title = new Node("titleNode");
        title.setCullMode( Spatial.CULL_NEVER );
        Quad quad = new Quad("title", 20, 5);
        quad.setRenderQueueMode( Renderer.QUEUE_ORTHO );
        title.attachChild(quad);
       
        // Texture for the title quad
        TextureState ts = display.getRenderer().createTextureState();
        ts.setTexture(
                TextureManager.loadTexture(BTAGame.class.getResource("/res/opening/bta_title.png"),
                Texture.MM_LINEAR_LINEAR,
                Texture.FM_LINEAR)
                );
        ts.setEnabled(true);
        quad.setRenderState(ts);
       
        // Alpha state for the title Quad
        AlphaState as = display.getRenderer().createAlphaState();
        as.setBlendEnabled(true);
        as.setSrcFunction(AlphaState.SB_SRC_ALPHA);
        as.setDstFunction(AlphaState.DB_ONE_MINUS_SRC_ALPHA);
        as.setTestEnabled(false);
        as.setEnabled(true);
        quad.setRenderState(as);
       
        quad.updateRenderState();
        scene.attachChild(title);
       
        title.updateRenderState();
        title.updateGeometricState(0.0f, true);
       
        scene.updateRenderState();
        scene.updateGeometricState(0.0f, true);
       
        userInterface.updateRenderState();
        userInterface.updateGeometricState( 0, true );
    }



But it gives me a black screen - that is, it does not render my Quad. If I comment out this line:

quad.setRenderQueueMode( Renderer.QUEUE_ORTHO );


Everything works fine, but then the quad is not displayed in an orthogonal perspective.

What's wrong with my code?

BTW, I'm extending BaseGame.

Son Of Cain


fullScreenQuad = new Quad("FullScreenQuad", display.getWidth(), display.getHeight());
fullScreenQuad.getLocalRotation().set(0, 0, 0, 1);
fullScreenQuad.getLocalTranslation().set(display.getWidth() / 2, display.getHeight() / 2, 0);
fullScreenQuad.getLocalScale().set(1, 1, 1);
fullScreenQuad.setRenderQueueMode(Renderer.QUEUE_ORTHO);

Thanks :smiley: