Buggy code:
public class HDRRenderer implements SceneProcessor { private static final int LUMMODE_NONE = 1 ; private static final int LUMMODE_ENCODE_LUM = 2 ; private static final int LUMMODE_DECODE_LUM = 3 ; private Renderer renderer ; private RenderManager renderManager ; private ViewPort viewPort ; private static final Logger logger = Logger . getLogger ( HDRRenderer . class . getName ( ) ) ; private Camera fbCam = new Camera ( 1 , 1 ) ; private FrameBuffer msFB ; private FrameBuffer mainSceneFB ; private Texture2D mainScene ; private FrameBuffer scene64FB ; private Texture2D scene64 ; private FrameBuffer scene8FB ; private Texture2D scene8 ; private FrameBuffer [ ] scene1FB = new FrameBuffer [ 2 ] ; private Texture2D [ ] scene1 = new Texture2D [ 2 ] ; private Material hdr64 ; private Material hdr8 ; private Material hdr1 ; private Material tone ; private Picture fsQuad ; private float time = 0 ; private int curSrc = - 1 ; private int oppSrc = - 1 ; private float blendFactor = 0 ; private int numSamples = 0 ; private float exposure = 0.18F ; private float whiteLevel = 100.0F ; private float throttle = - 1 ; private int maxIterations = - 1 ; private Format bufFormat = Format . RGB16F ; private MinFilter fbMinFilter = MinFilter . BilinearNoMipMaps ; private MagFilter fbMagFilter = MagFilter . Bilinear ; private AssetManager manager ; private boolean enabled = true ; public HDRRenderer ( AssetManager manager , Renderer renderer ) { } public boolean isEnabled ( ) { } public void setSamples ( int samples ) { } public void setExposure ( float exp ) { } public void setWhiteLevel ( float whiteLevel ) { } public void setMaxIterations ( int maxIterations ) { } public void setThrottle ( float throttle ) { } public void setUseFastFilter ( boolean fastFilter ) { } public Picture createDisplayQuad ( ) { } private Material createLumShader ( int srcW , int srcH , int bufW , int bufH , int mode , int iters , Texture tex ) { } private void createLumShaders ( ) { } private int opposite ( int i ) { } private void renderProcessing ( Renderer r , FrameBuffer dst , Material mat ) { } private void renderToneMap ( Renderer r , FrameBuffer out ) { } private void updateAverageLuminance ( Renderer r ) { } public boolean isInitialized ( ) { } public void reshape ( ViewPort vp , int w , int h ) { } public void initialize ( RenderManager rm , ViewPort vp ) { } public void preFrame ( float tpf ) { } public void postQueue ( RenderQueue rq ) { } public void postFrame ( FrameBuffer out ) { if ( ! ( enabled ) ) return ; if ( ( msFB ) != null ) { <START_BUG> renderer . copyFrameBuffer ( msFB , mainSceneFB ) ; <END_BUG> } else { } if ( ( throttle ) == ( - 1 ) ) { curSrc = 0 ; oppSrc = 0 ; blendFactor = 0 ; time = 0 ; updateAverageLuminance ( renderer ) ; } else { if ( ( curSrc ) == ( - 1 ) ) { curSrc = 0 ; oppSrc = 0 ; updateAverageLuminance ( renderer ) ; blendFactor = 0 ; time = 0 ; } else if ( ( time ) > ( throttle ) ) { oppSrc = curSrc ; curSrc = opposite ( curSrc ) ; updateAverageLuminance ( renderer ) ; blendFactor = 0 ; time = 0 ; } } renderToneMap ( renderer , null ) ; renderManager . setCamera ( viewPort . getCamera ( ) , false ) ; } public void cleanup ( ) { } }

Fix:
renderer . copyFrameBuffer ( msFB , mainSceneFB , true ) ;