diff --git a/src/graphics.cpp b/src/graphics.cpp
index 6a12cb3..c53fe0e 100644
--- a/src/graphics.cpp
+++ b/src/graphics.cpp
@@ -708,6 +708,9 @@ void Graphics::transition(int duration,
 
 	setBrightness(255);
 
+	/* Capture new scene */
+	p->screen.composite();
+
 	/* The PP frontbuffer will hold the current scene after the
 	 * composition step. Since the backbuffer is unused during
 	 * the transition, we can reuse it as the target buffer for
@@ -715,9 +718,6 @@ void Graphics::transition(int duration,
 	TEXFBO &currentScene = p->screen.getPP().frontBuffer();
 	TEXFBO &transBuffer  = p->screen.getPP().backBuffer();
 
-	/* Capture new scene */
-	p->screen.composite();
-
 	/* If no transition bitmap is provided,
 	 * we can use a simplified shader */
 	TransShader &transShader = shState->shaders().trans;