FROM : Chris Ryland
DATE : Mon Nov 19 19:56:42 2007
So, just to clarify for posterity, if you had turned off animation by
using a transaction, it would have mostly or completely removed your
slowdown?
On Nov 19, 2007, at 5:02 AM, Jonathan del Strother wrote:
> On 19 Nov 2007, at 09:49, David Duncan wrote:
>
>> On Nov 19, 2007, at 1:09 AM, Jonathan del Strother wrote:
>>
>>> Would you run that past me again? Changing the zPosition re-sorts
>>> the sibling layers? In which case, is there any point in re-
>>> sorting the child array to specify render order?
>>
>> Whenever the zPosition of a layer changes, you have to sort the
>> layers (internally) for presentation, otherwise you wouldn't get
>> the correct visual effect. It doesn't sort the sublayers array,
>> just the visual order that the layers are rendered in (which if all
>> layers have the same zPosition is just the order in the sublayers
>> array).
>>
>>> I'll test it out later, but I assume that CA is using a depth
>>> buffer to make sure that higher zPositioned objects appear in
>>> front of others, in which case the only time you need to worry
>>> about the order of the child array ought to be if you're dealing
>>> with transparent elements.
>>
>> CA has no guarantees of having or not having transparent content.
>> In fact, the most common use for it (Appkit's layer based views)
>> involves considerable amounts of transparency (mostly for
>> antialiasing, but since the entire drawing model is supported
>> arbitrary transparency has to be supported as well).
>>
>>> Is there any way of re-sorting the child element array that
>>> doesn't incur a huge performance & memory hit?
>>
>>
>> The alternative is what I said last time, to use the current
>> transaction to disable creating implicit animations.
>
> Oooh, it's finally clicked that re-sorting the sublayers is an
> animated process. That would explain the memory usage pattern I was
> seeing, since I would have been created a lot of overlapping
> animations...
>
> Thanks for clarifying that
>
> Jon
>
> _______________________________________________
>
> Cocoa-dev mailing list (<email_removed>)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/<email_removed>
>
> This email sent to <email_removed>
>
Cheers!
--Chris Ryland / Em Software, Inc. / www.emsoftware.com
DATE : Mon Nov 19 19:56:42 2007
So, just to clarify for posterity, if you had turned off animation by
using a transaction, it would have mostly or completely removed your
slowdown?
On Nov 19, 2007, at 5:02 AM, Jonathan del Strother wrote:
> On 19 Nov 2007, at 09:49, David Duncan wrote:
>
>> On Nov 19, 2007, at 1:09 AM, Jonathan del Strother wrote:
>>
>>> Would you run that past me again? Changing the zPosition re-sorts
>>> the sibling layers? In which case, is there any point in re-
>>> sorting the child array to specify render order?
>>
>> Whenever the zPosition of a layer changes, you have to sort the
>> layers (internally) for presentation, otherwise you wouldn't get
>> the correct visual effect. It doesn't sort the sublayers array,
>> just the visual order that the layers are rendered in (which if all
>> layers have the same zPosition is just the order in the sublayers
>> array).
>>
>>> I'll test it out later, but I assume that CA is using a depth
>>> buffer to make sure that higher zPositioned objects appear in
>>> front of others, in which case the only time you need to worry
>>> about the order of the child array ought to be if you're dealing
>>> with transparent elements.
>>
>> CA has no guarantees of having or not having transparent content.
>> In fact, the most common use for it (Appkit's layer based views)
>> involves considerable amounts of transparency (mostly for
>> antialiasing, but since the entire drawing model is supported
>> arbitrary transparency has to be supported as well).
>>
>>> Is there any way of re-sorting the child element array that
>>> doesn't incur a huge performance & memory hit?
>>
>>
>> The alternative is what I said last time, to use the current
>> transaction to disable creating implicit animations.
>
> Oooh, it's finally clicked that re-sorting the sublayers is an
> animated process. That would explain the memory usage pattern I was
> seeing, since I would have been created a lot of overlapping
> animations...
>
> Thanks for clarifying that
>
> Jon
>
> _______________________________________________
>
> Cocoa-dev mailing list (<email_removed>)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/<email_removed>
>
> This email sent to <email_removed>
>
Cheers!
--Chris Ryland / Em Software, Inc. / www.emsoftware.com
| Related mails | Author | Date |
|---|---|---|
| Jonathan del Strot… | Nov 16, 19:41 | |
| David Duncan | Nov 16, 19:48 | |
| Jonathan del Strot… | Nov 16, 19:54 | |
| David Duncan | Nov 16, 20:08 | |
| Jonathan del Strot… | Nov 19, 10:09 | |
| David Duncan | Nov 19, 10:49 | |
| Jonathan del Strot… | Nov 19, 11:02 | |
| Chris Ryland | Nov 19, 19:56 | |
| Jonathan del Strot… | Nov 22, 13:24 |






Cocoa mail archive

