Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Everything You Never Wanted to Know About Core ...
Search
Josh Abernathy
February 03, 2012
Programming
5
450
Everything You Never Wanted to Know About Core Animation
Josh Abernathy
February 03, 2012
Tweet
Share
More Decks by Josh Abernathy
See All by Josh Abernathy
Functions, A Love Story
joshaber
7
1.1k
Better Code for a Better World
joshaber
18
3.7k
Stealing for Fun and Profit! PDX
joshaber
1
420
ReactiveCocoa for a Better World
joshaber
18
1.2k
Stealing for Fun and Profit!
joshaber
5
820
Other Decks in Programming
See All in Programming
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
380
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
590
家族・子育て重視/沖縄在住を維持しながらエンジニアとしてのキャリアをどのように育てていくか?
ug
0
260
新卒から4年間、20年もののWebサービスと 向き合って学んだソフトウェア考古学
oguri
8
7k
小さく段階的リリースすることで深夜メンテを回避する
mkmk884
2
150
Windows版PHPのビルド手順とPHP 8.4における変更点
matsuo_atsushi
0
390
Django for Data Science (Boston Python Meetup, March 2025)
wsvincent
0
290
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
2
1.4k
プログラミング教育のコスパの話
superkinoko
0
130
Agentic Applications with Symfony
el_stoffel
1
170
CTFのWebにおける⾼難易度問題について
hamayanhamayan
1
1k
Firebase Dynamic Linksの代替手段を自作する / Create your own Firebase Dynamic Links alternative
kubode
0
200
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Docker and Python
trallard
44
3.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Making Projects Easy
brettharned
116
6.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
31
4.8k
Facilitating Awesome Meetings
lara
53
6.3k
Practical Orchestrator
shlominoach
186
10k
Designing Experiences People Love
moore
141
23k
GraphQLとの向き合い方2022年版
quramy
45
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Transcript
(Hola.)
Story time.
Josh goes to WWDC
Cool story bro.
Josh Abernathy @joshaber
None
None
None
None
Everything You wanted to know about NEVER Core Animation
None
Docs
Docs Headers
Docs Headers
History.
HOW DO THEY WORK? Window Managers
None
Stacking Window Manager
None
Draw window A to buffer
Draw window A to buffer ...
Draw window A to buffer ... Draw window N to
buffer
Draw window A to buffer ... Swap buffer to screen
Draw window N to buffer
aka
aka
None
None
None
None
None
None
jk, guys
None
None
None
None
Draw dirty rect to buffer
Draw dirty rect to buffer Swap buffer to screen
None
Compositing Window Manager
Quartz Compositor
None
None
None
None
Core Animation.
None
...not just animation
Compositing Window Manager
Compositing Window Manager ...in your window
aka
aka
Buffers, How do they work?
Buffers are OpenGL textures
Live demo!
Buffers are OpenGL textures
None
Instruments
CA_COLOR_OPAQUE Instruments
CA_COLOR_OPAQUE OpenGL Profiler Instruments
Minimize
Minimize Minimize Minimize
Minimize re-draw Minimize Minimize
Minimize re-draw Minimize Minimize blending
Minimize re-draw Minimize Minimize blending hierarchy
Using Core Animation.
Super nice! OMG KILL ME NOW
Subpixel anti-aliased Standard anti-aliasing
Super nice! OMG KILL ME NOW
Super nice! Still super nice!
TwUI Pronounced: two- eeeeeeeeeeeeeeeeeeeeee eeeeeeeeeeeeeeeeeeeeee eeeeeeeeeeeeeeeeeeeeee eeeeeeeeeeeeee e
None
fram ew ork
TwUI More Animation github.com/twitter/twui github.com/joshaber/MoreAnimation Chameleon github.com/BigZaphod/Chameleon
The End.