Uplift — Material shadows on Android
summary
Explains how Android elevation maps to real light: a point light ~600 dips above the screen with ~800‑dip diameter produces spot and ambient components, and Android uses outlines (added in Lollipop) to project shadows; ambient alpha defaults to 3.9% and spot to 19% (TVs higher). Shows rendering paths in HWUI and Skia, the runtime APIs to tint spot/ambient shadows on newer Android, and an open‑source playground Uplift on GitHub that demonstrates the effects.
AI-written summary · about
chapters (24)
- 0:00Intro
- 0:38Material design
- 1:43Wireframe
- 2:43Movement
- 3:38Color
- 4:33Physical metaphor
- 5:59Elevation
- 6:56Light sources
- 8:23Material shadow
- 14:31Shadow delta
- 15:40Outlines
- 17:28Shapes
- 20:50Layers
- 22:37Inset
- 26:35Colors
- 27:11New API
- 28:06Theme attributes
- 28:40Material shadows in detail
- 30:22How much alpha to use
- 31:10Limitations
- 34:21Uplift
- 36:57Animating shadows
- 37:18Moving the spotlight
- 38:06Private themes
related talks
16mAndroid Graphics
30mDo Not Go Gentle in That Good Night - Implementing a Dark Theme on Android
40mThe Evolution of Android Graphics
42mAndroid Graphics: the Path to [UI] Riches
40mAndroid Graphics Performance
34mUnlocking the Power of Shaders in Android with AGSL and Jetpack Compose
43mPixel with Superpowers: Modern Android UI with AGSL Shaders
26mLiving in a Material world
