Zoom Picker

このページではZoomVerticalPickerを例にZoomPickerの構造を説明します.
このPickerはメニューの [GameObject]/[UI]/[Picker]/[Zoom Vertical Picker]をクリックすることで追加できます.
ZoomVerticalPicker,ZoomHorizontalPickerは同様の構造を持っています.

ZoomVerticalPicker

ルートオブジェクトです. コンポーネントはアタッチされていません.

../_images/zoom1.png

Glass

中央のGlassです.
Maskコンポーネントがアタッチされています.
このオブジェクトのMaskによりズーム対象のアイテムはGlass内にのみ描画されます.
DontTouchImageコンポーネントがアタッチされています.

GlassBg

中央のガラスの背景です. ZoomVertialPickerでは白く塗りつぶされた画像です.
DontTouchImageがアタッチされています.
アイテムは [拡大されていないアイテム] -> [GlassBg] -> [Glass] -> [拡大されているアイテム] の順番で描画されます.
このアイテムが拡大されていないアイテムを不可視にしています.
../_images/zoom2.png

Content

PickerLayoutGroupの代わりに ZoomPickerLayoutGroupコンポーネントがアタッチされています.
ZoomPickerLayoutGroupコンポーネントの ZoomItemParentにはズームされたオブジェクトが配置される親オブジェクトをセットします.
ZoomVerticalPickerではGlassがZoomItemParentに設定されています.
../_images/zoom4.png ../_images/zoom7.png

Item0/Item1/Item2

アイテムの本体です. ZoomPickerItemコンポーネント(あるいはそれを継承したクラス)のアタッチが必要です.
ZoomPickerItemコンポーネントのZoomItemには各アイテムが持つズーム対象のアイテムをセットします.
OnSelectItemで送信されるGameObjectはこのオブジェクトです.
../_images/zoom5.png ../_images/zoom8.png

ZoomItem

ズーム対象のオブジェクトです.
ZoomPickerItemコンポーネントのZoomItemにより指定されています.
このオブジェクトはGlass上に描画されます.
../_images/zoom6.png