Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
460
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.8k
Stealing for Fun and Profit! PDX
joshaber
1
420
ReactiveCocoa for a Better World
joshaber
18
1.3k
Stealing for Fun and Profit!
joshaber
5
820
Other Decks in Programming
See All in Programming
STYLE
koic
0
150
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
120
Cap'n Webについて
yusukebe
0
120
Level up your Gemini CLI - D&D Style!
palladius
1
180
開発に寄りそう自動テストの実現
goyoki
1
740
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
140
sbt 2
xuwei_k
0
250
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
110
認証・認可の基本を学ぼう後編
kouyuume
0
180
ゲームの物理 剛体編
fadis
0
320
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
120
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
2
640
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
A better future with KSS
kneath
240
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Context Engineering - Making Every Token Count
addyosmani
9
490
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
RailsConf 2023
tenderlove
30
1.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Music & Morning Musume
bryan
46
7k
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.