 			// create screen buffers
 			_bitmap[0] = new Bitmap(new BitmapData(FP.width, FP.height, false, 0), PixelSnapping.NEVER);
 			_bitmap[1] = new Bitmap(new BitmapData(FP.width, FP.height, false, 0), PixelSnapping.NEVER);
-			FP.engine.addChild(_bitmap[0]).visible = true;
-			FP.engine.addChild(_bitmap[1]).visible = false;
+			FP.engine.addChild(_sprite);
+			_sprite.addChild(_bitmap[0]).visible = true;
+			_sprite.addChild(_bitmap[1]).visible = false;
 			FP.buffer = _bitmap[0].bitmapData;
 			_width = FP.width;
 			_height = FP.height;

		public function get mouseY():int { return (FP.stage.mouseY - _y) / (_scaleY * _scale); }
		
		// Screen infromation.
		/** @private */ private var _bitmap:Vector.<Bitmap> = new Vector.<Bitmap>(2);
		/** @private */ private var _current:int = 0;
		/** @private */ private var _matrix:Matrix = new Matrix;

	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.PixelSnapping;
	import flash.display.Sprite;
	import flash.geom.Matrix;
	import flash.geom.Point;
	import flash.geom.Transform;
