Putting my FengGUI into a RenderPass

I've been rigging my game to use FengGUI, which seems nice.

I can't figure out how to put my FengGUI into a RenderPass, since I'm using a pass manager for all of my rendering this is a problem.

I tried this, however:

    protected void render(float interpolation)

and it gives me something like this.

I assume the passes and the guidisp.display(); aren't really getting along, so I'd like to put it into a RenderPass and just add it to my pass manager, I assume that'll probably clear up the error.

Any ideas on how to do this (I've read through the forum but all of the posts simply suggest putting it into a render pass without telling you how :))

you want to do something like

RenderPass fenPass = new RenderPass();
fenPass.add( fenDisplay);
pManager.add( fenPass );

where fenDisplay is your FenGuiSpatial

also, the fenPass should be the last pass added to your pass manager ( think this matters )

Well I would've done that except I can't find a GUI Spatial. I just have my guidisp which is a


I found a thread on making a class that extends Spatial, which I could then put in a render pass. I'll give that a shot. Will I have to make separate spatials for each window? It seems if it's one spatial moving one window will move all of the others?

I decided to use the advice that turns the FengGUI into a Pass instead, since I thought it would be easier to do.

 * To change this template, choose Tools | Templates
 * and open the template in the editor.

package fyrestonev03;

import com.jme.image.Texture;
import com.jme.math.Vector3f;
import com.jme.renderer.Renderer;
import com.jme.renderer.pass.Pass;
import com.jme.scene.state.TextureState;
import com.jme.system.DisplaySystem;
import org.fenggui.Display;
import org.fenggui.Label;
import org.fenggui.composites.Window;

 * @author Tyler

// This should probably extend GameState so jME can easily enable and disable
public class FengPass extends Pass {
    private Display display;

    private TextureState defaultTextureState = null;
    private Label fps;
    public FengPass() {
        display = new org.fenggui.Display( new org.fenggui.render.lwjgl.LWJGLBinding() );

        // Create default texture state to reset from jME to fengGUI
        Texture defTex = TextureState.getDefaultTexture().createSimpleClone();
        defTex.setScale( Vector3f.UNIT_XYZ.clone() );
        defaultTextureState = DisplaySystem.getDisplaySystem().getRenderer().createTextureState();
        defaultTextureState.setTexture( defTex );

        Window fpsMonitor = new Window();
        fpsMonitor.setTitle("FPS Monitor");
        fps = new Label();
        fps.setText("LOADING FPS MONITOR");
        fps.setSize(fps.getMinHeight(), 150);
    // jME State Methods
    public void doUpdate( float timePerFrame ) {
    public void doRender( Renderer renderer ) {
    public void cleanUp() {
    public void setFPSLabelText(String s)
    public Display getDisplay()
        return display;

Doesn't work, though. The exact same as before. I would attempt to set it to Ortho mode to see if it fixes anything, but I wouldn't really know how to do that, especially in a Pass.