マテリアルデザイン 深度について

前置き

マテリアルデザインを急速に勉強中・・・・
http://www.google.com/design/spec/material-design/introduction.html

ここでは、深度について学んだ事をメモしたいと思います。

ベクトルの方向

whatismaterial_environment_3d
右上を(0,0)としている。
お気づきのように、Z-indexが存在します。

Z-index

これが深度の影の付け方にとても関係します。
オブジェクトの種類によって深さが変わるのです。

  • キーライト:影の方向性を決める
  • アンビエントライト:深度を決める
  • キー+アンビエントライト:2つの組合わせ

whatismaterial_environment_shadow3

whatismaterial_environment_shadow2

whatismaterial_environment_shadow1

物質的なプロパティ

ルール、箇条書きします。

  • オブジェクトには1dpの厚みがあります。
    whatismaterial_materialproperties_physicalproperties_thickness_01_yes
  • アンビエントによるshadowは深度に関連します。
  • オブジェクトに配置されるコンテンツには厚みがありません。
  • オブジェクトに配置されるコンテンツは配置されたオブジェクトよりも大きくなる事はありません。
  • 多くのコンテンツをまたいで、アクションをおこすトリガーを設定しない。(結構あたりまえかも?)
  • 意味の違うオブジェクトが同じ階層に存在する事はほぼ無い
  • 深度の違うオブジェクトが交差する事はない。(情報の構造はしっかりすれば大丈夫。)
  • オブジェクトの大きさによって矩形が変わります。円 < 角丸四角 < 四字熟語
  • 同じオブジェクトであれば、切り離しても、元の通りにつなげる事が出来る

深度と影について

種類により深度が変わります。
もちろん、3Dなので、影のdpの深さも変わります。

Elevation (dp) Component
24 DialogPicker
23
22
21
20
19
18
17
16 Nav drawerRight drawerBottom Sheet
15
14
13
12 Floating action button (FAB – pressed)
11
10
9 Sub menu (+1dp for each sub menu)
8 MenuCard (picked up state)Raised button (pressed state)
7
6 Floating action button (FAB – resting elevation)Snackbar
5
4 App Bar
3 Refresh indicatorQuick entry / Search bar (scrolled state)
2 Card (resting elevation)Raised button (resting elevation)Quick entry / Search bar (resting elevation)
1 Switch

補足:2つのオブジェクトの深度の差には6dpあります。
whatismaterial_3d_elevation1
仮想の深度が2dp上の深度が8dp。

横から見るとこんな感じ。
whatismaterial_3d_elevation2
ちなみに、影の大きさは深度のdpに関連します。
そして、オブジェクトに深度を付ける事により、他の階層のオブジェクトから特別とされ、特に機能が単独であれば他に関与されない独立された動きを実現するようになります。(gmailのメール作成の丸いボタンのように。)
http://www.google.com/design/spec/what-is-material/elevation-shadows.html#elevation-shadows-elevation-android-

マテリアルデザインの深度はアプリの構造もユーザーに伝えようとしたデザインと言う事になります。

カテゴリー: app

関連記事