/** Setup the avaiatrix pipeline here */ private void setupAviatrix() { // Assemble a simple single-threaded pipeline. GLCapabilities caps = new GLCapabilities(); caps.setDoubleBuffered(true); caps.setHardwareAccelerated(true); GraphicsCullStage culler = new NullCullStage(); culler.setOffscreenCheckEnabled(false); GraphicsSortStage sorter = new SimpleTransparencySortStage(); surface = new DebugAWTSurface(caps); DefaultGraphicsPipeline pipeline = new DefaultGraphicsPipeline(); pipeline.setCuller(culler); pipeline.setSorter(sorter); pipeline.setGraphicsOutputDevice(surface); displayManager = new SingleDisplayCollection(); displayManager.addPipeline(pipeline); // Render manager sceneManager = new SingleThreadRenderManager(); sceneManager.addDisplay(displayManager); sceneManager.setMinimumFrameInterval(100); // Before putting the pipeline into run mode, put the canvas on // screen first. Component comp = (Component) surface.getSurfaceObject(); add(comp, BorderLayout.CENTER); }