FROM : Jonathan del Strother
DATE : Fri May 02 15:50:40 2008
Hi,
I have a CALayer covering my view, with a blur background filter.
Works fine for static cases - everything behind the blur layer is
blurred.
However, for layers that update themselves continuously - eg
QTMovieLayer or QCCompositionLayer - or even just plain layers that
move, I get ugly trails around the edges of the layers behind the
blurring layer, as though it's not properly redrawing anything outside
the bounds of the layer being blurred.
To try and get round this, I subclassed CALayer and tried hooking into
a variety of display methods (drawInContext, display,
setNeedsDisplay), in the hope that I could call setNeedsDisplay on the
blur layer whenever one of the layers being blurred changes, but those
methods don't seem to be called during normal operation (eg when a
QCCompositionLayer renders a new frame, or when a layer changes
position).
See http://pastie.org/190470 - this is a simple QC layer on the left,
and a couple of moving red/green layers. The QC Layer is permanently
surrounded by that white border, and the moving layers leave a trail
behind them as they move around.
What am I missing?
Jon
DATE : Fri May 02 15:50:40 2008
Hi,
I have a CALayer covering my view, with a blur background filter.
Works fine for static cases - everything behind the blur layer is
blurred.
However, for layers that update themselves continuously - eg
QTMovieLayer or QCCompositionLayer - or even just plain layers that
move, I get ugly trails around the edges of the layers behind the
blurring layer, as though it's not properly redrawing anything outside
the bounds of the layer being blurred.
To try and get round this, I subclassed CALayer and tried hooking into
a variety of display methods (drawInContext, display,
setNeedsDisplay), in the hope that I could call setNeedsDisplay on the
blur layer whenever one of the layers being blurred changes, but those
methods don't seem to be called during normal operation (eg when a
QCCompositionLayer renders a new frame, or when a layer changes
position).
See http://pastie.org/190470 - this is a simple QC layer on the left,
and a couple of moving red/green layers. The QC Layer is permanently
surrounded by that white border, and the moving layers leave a trail
behind them as they move around.
What am I missing?
Jon
| Related mails | Author | Date |
|---|---|---|
| No related mails found. | ||






Cocoa mail archive

