@Override
	public void renderBackground(float interpolation)
	{
		Vector2 realOffset = Interpolator.linearInterpolate(oldOffset, offset, interpolation);
		
		drawBlueprintBackground();
		if(R2DFileUtility.textureExists(texID.text) && tex != null)
		{
			if(!tex.getTextureLocation().equals(texID.text))
				reloadTex();
			
			BufferedImage image = tex.getImage();
			Vector2 dim = new Vector2(image.getWidth(),image.getHeight());
			image.flush();
			image = null;
			
			Renderer.startScissor(new Vector2(300,0), new Vector2(screenWidth()-300,screenHeight()));
			
			Renderer.pushMatrix();
				Renderer.translate(realOffset);
				Renderer.scale(scale);
				Renderer.drawRect(new Vector2(0,0), dim, tex, 0xffffff, 1.0f);
			Renderer.popMatrix();
			if(animation != null)
			{
				Renderer.pushMatrix();
					Renderer.translate(realOffset);
					Renderer.scale(scale);
					animation.renderFrames();
				Renderer.popMatrix();
				Renderer.endScissor();
				
				Vector2 spriteDim = animation.getSpriteDim();
				animation.render(new Vector2(10,360), spriteDim);
			}
			Renderer.endScissor();
		}
	}