int viewHeight = (int) ((curCamera.getViewPortTop() - curCamera.getViewPortBottom()) * curCamera.getHeight()); renderer.setViewPort(0, 0, width, height); renderer.readFrameBuffer(out, outBuf); renderer.setViewPort(viewX, viewY, viewWidth, viewHeight);
@Override protected void postQueue(RenderQueue queue) { if (glowMode != GlowMode.Scene) { renderManager.getRenderer().setBackgroundColor(ColorRGBA.BlackNoAlpha); renderManager.getRenderer().setFrameBuffer(preGlowPass.getRenderFrameBuffer()); renderManager.getRenderer().clearBuffers(true, true, true); renderManager.setForcedTechnique("Glow"); renderManager.renderViewPortQueues(viewPort, false); renderManager.setForcedTechnique(null); renderManager.getRenderer().setFrameBuffer(viewPort.getOutputFrameBuffer()); } }
protected void deinitInThread(){ renderable.set(false); listener.destroy(); renderer.cleanup(); pbuffer.destroy(); logger.fine("Offscreen buffer destroyed."); super.internalDestroy(); }
public void postFrame(FrameBuffer out) { FrameBuffer sceneBuffer = renderFrameBuffer; if (renderFrameBufferMS != null && !renderer.getCaps().contains(Caps.OpenGL32)) { renderer.copyFrameBuffer(renderFrameBufferMS, renderFrameBuffer, true); } else if (renderFrameBufferMS != null) { sceneBuffer = renderFrameBufferMS; } renderFilterChain(renderer, sceneBuffer); renderer.setFrameBuffer(outputBuffer); //viewport can be null if no filters are enabled if (viewPort != null) { renderManager.setCamera(viewPort.getCamera(), false); } }
@Override public void simpleRender(RenderManager rm){ Renderer r = rm.getRenderer(); //do FBO rendering r.setFrameBuffer(fb); rm.setCamera(cam, false); // FBO uses current camera r.clearBuffers(true, true, true); rm.renderScene(fbNode, viewPort); rm.flushQueue(viewPort); //go back to default rendering and let //SimpleApplication render the default scene r.setFrameBuffer(null); }
this.renderer.initialize(); this.renderer.setMainFrameBufferSrgb(settings.isGammaCorrection()); this.renderer.setLinearizeSrgbImages(settings.isGammaCorrection());
r.copyFrameBuffer(cachedPreNormals, normalPass.getRenderFrameBuffer(), false); } else { r.setFrameBuffer(normalPass.getRenderFrameBuffer()); renderManager.getRenderer().clearBuffers(true, true, true); if( renderManager.getRenderer().getCaps().contains(Caps.GLSL150) ) { renderManager.setForcedTechnique("PreNormalPass15"); } else { renderManager.getRenderer().setFrameBuffer(viewPort.getOutputFrameBuffer());
public void updateImageContents(){ cpuBuf.clear(); renderer.readFrameBuffer(offBuffer, cpuBuf); synchronized (image) { Screenshots.convertScreenShot2(cpuBuf.asIntBuffer(), image); } if (display != null) display.repaint(); }
@Override protected void postFrame(RenderManager renderManager, ViewPort viewPort, FrameBuffer prevFilterBuffer, FrameBuffer sceneBuffer) { renderManager.setCamera(viewPort.getCamera(), false); if (prevFilterBuffer != sceneBuffer) { renderManager.getRenderer().copyFrameBuffer(prevFilterBuffer, sceneBuffer, false); } renderManager.getRenderer().setFrameBuffer(sceneBuffer); viewPort.getQueue().renderQueue(RenderQueue.Bucket.Translucent, renderManager, viewPort.getCamera()); }
public void postQueue(RenderQueue rq) { //we need special treatement for the sky because it must not be clipped rm.getRenderer().setFrameBuffer(reflectionBuffer); reflectionCam.setProjectionMatrix(null); rm.setCamera(reflectionCam, false); rm.getRenderer().clearBuffers(true, true, true); //Rendering the sky whithout clipping rm.getRenderer().setDepthRange(1, 1); vp.getQueue().renderQueue(RenderQueue.Bucket.Sky, rm, reflectionCam, true); rm.getRenderer().setDepthRange(0, 1); //setting the clip plane to the cam reflectionCam.setClipPlane(reflectionClipPlane, Plane.Side.Positive);//,1 rm.setCamera(reflectionCam, false); }
protected void runLoop(){ if (!created.get()) { throw new IllegalStateException(); } listener.update(); checkGLError(); renderer.postFrame(); int frameRate = settings.getFrameRate(); if (frameRate >= 1) { //FIXME } }
@SuppressWarnings("fallthrough") public void postQueue(RenderQueue rq) { lightReceivers.clear(); skipPostPass = false; if ( !checkCulling(viewPort.getCamera()) ) { skipPostPass = true; return; } updateShadowCams(viewPort.getCamera()); Renderer r = renderManager.getRenderer(); renderManager.setForcedMaterial(preshadowMat); renderManager.setForcedTechnique("PreShadow"); for (int shadowMapIndex = 0; shadowMapIndex < nbShadowMaps; shadowMapIndex++) { if (debugfrustums) { doDisplayFrustumDebug(shadowMapIndex); } renderShadowMap(shadowMapIndex); } debugfrustums = false; //restore setting for future rendering r.setFrameBuffer(viewPort.getOutputFrameBuffer()); renderManager.setForcedMaterial(null); renderManager.setForcedTechnique(null); renderManager.setCamera(viewPort.getCamera(), false); }
/** * Used to reset cubeField */ private void gameReset(){ Score = 0; lowCap = 10; colorInt = 0; highCap = 40; difficulty = highCap; for (Geometry cube : cubeField){ cube.removeFromParent(); } cubeField.clear(); if (fcube != null){ fcube.removeFromParent(); } fcube = createFirstCube(); obstacleColors.clear(); obstacleColors.add(ColorRGBA.Orange); obstacleColors.add(ColorRGBA.Red); obstacleColors.add(ColorRGBA.Yellow); renderer.setBackgroundColor(ColorRGBA.White); speed = lowCap / 400f; coreTime = 20.0f; coreTime2 = 10.0f; diffHelp=lowCap; player.setLocalTranslation(0,0,0); }
renderer.cleanup(); renderer.invalidateState(); }else{
public void init(GLAutoDrawable drawable){ // prevent initializing twice on restart if (!wasInited){ wasInited = true; canvas.requestFocus(); super.internalCreate(); logger.fine("Display created."); renderer.initialize(); listener.initialize(); } }
protected void runLoop(){ if (!created.get()) { throw new IllegalStateException(); } if (pbuffer.isBufferLost()) { pbuffer.destroy(); try { pbuffer = new Pbuffer(width, height, pixelFormat, null); pbuffer.makeCurrent(); // Context MUST be reset here to avoid invalid objects! renderer.invalidateState(); } catch (LWJGLException ex) { listener.handleError("Failed to restore pbuffer content", ex); } } listener.update(); assert checkGLError(); renderer.postFrame(); // Need to flush GL commands // to see any result on the pbuffer's front buffer. GL11.glFlush(); int frameRate = settings.getFrameRate(); if (frameRate >= 1) { Display.sync(frameRate); } }
renderer.copyFrameBuffer(msFB, mainSceneFB, true); }else{
@Override public void simpleRender(RenderManager rm){ Renderer r = rm.getRenderer(); //do FBO rendering r.setFrameBuffer(fb); rm.setCamera(cam, false); // FBO uses current camera r.clearBuffers(true, true, true); rm.renderScene(fbNode, viewPort); rm.flushQueue(viewPort); //go back to default rendering and let //SimpleApplication render the default scene r.setFrameBuffer(null); }
renderer.initialize(); } else { throw new UnsupportedOperationException("Unsupported renderer: " + settings.getRenderer()); renderer.setMainFrameBufferSrgb(settings.isGammaCorrection()); renderer.setLinearizeSrgbImages(settings.isGammaCorrection());
public void postFrame(FrameBuffer out) { FrameBuffer sceneBuffer = renderFrameBuffer; if (renderFrameBufferMS != null && !renderer.getCaps().contains(Caps.OpenGL32)) { renderer.copyFrameBuffer(renderFrameBufferMS, renderFrameBuffer, true); } else if (renderFrameBufferMS != null) { sceneBuffer = renderFrameBufferMS; } renderFilterChain(renderer, sceneBuffer); renderer.setFrameBuffer(outputBuffer); //viewport can be null if no filters are enabled if (viewPort != null) { renderManager.setCamera(viewPort.getCamera(), false); } }