I am writing a SpriteKit game and ran into a blurry view issue that resides on SKView. It should slide to the right when the game is paused, and it should blur the contents of its parent view (SKView) just like the control center panel in iOS 7. Here is the desired appearance:

I really get:

In fact, the left view is not completely black; you can see how the glare from the supervisor fights slightly with the almost opaque subzone, but no blurring is applied. Is this an iOS 8 bug / feature, or is this my mistake / misunderstanding.
Here are my subclass entities of UIVisualEffectView:
class OptionsView: UIVisualEffectView {
init(size: CGSize) {
buttons = [UIButton]()
super.init(effect: UIBlurEffect(style: .Dark))
frame = CGRectMake(-size.width, 0, size.width, size.height)
addButtons()
clipsToBounds = true
}
func show() {
UIView.animateWithDuration(0.3, animations: {
self.frame.origin.x = 0
})
}
func hide() {
UIView.animateWithDuration(0.3, animations: {
self.frame.origin.x = -self.frame.size.width
})
}
Then in the GameScene class:
in the initializer:
optionsView = OptionsView(size: CGSizeMake(130, size.height))
in didMoveToView (view: SKView):
view.addSubview(optionsView)
when pause button is pressed:
self.optionsView.show()
P.S. , , , iOS8
→ UIImageView OptionsView clipToBounds = true → UIImageView ,
UIView, UIVisualEffectView UIBlurView SKEffectNode SKCropNode.