Unity / VRゲーム開発日記@長崎

Unityを使ったVRのゲーム開発をやってます。

時職人の作り方(3)- アイコンの構造

誰得というもっぱらなうわさの、
時職人の作り方 、第三回。


今回はアイコンの構造についてです。

アイコンの種類

アイコンには以下の状態があります。

・選択不可
f:id:icoc_dev:20141106154758j:plain


・選択可能:未クリア
f:id:icoc_dev:20141106154804j:plain


・選択中
f:id:icoc_dev:20141106154812j:plain


・クリア済み
f:id:icoc_dev:20141106154816j:plain


・Justタイムでクリア済み
f:id:icoc_dev:20141106154820j:plain




アイコンの状態は5つありますが、
アイコンの表示状態としては、以下のenumを割り当てて管理しています。

enum Frame
{

	Lock,
	NonClear,
	Selected,
	Clear,
	
}


Lock = 選択不可
NonClear = 選択可能;未クリア
Selected = 選択中
Clear = クリア済み

この上で、Justタイムのものには、
後付で王冠を乗っけるという考えです。

アイコンの構造


各ステージアイコンには、
クリア秒数も表示しています。


f:id:icoc_dev:20141106160846j:plain
※こんな感じで、アイコンの前に数字を表示



ここは単純にフォントを乗っければよいですが、
この時はまだフォントの使い方がよくわかってなく(^^;


数値に対応した画像を用意して、
テクスチャの座標を切り替えて表示するという形をとってます。


※テクスチャの切り替えについては、ちょっと長くなりそうなので次回…


具体的なObjectの構造はこんな感じ。

f:id:icoc_dev:20141106161404j:plain


icon_0-0 … エリア 1 、 ステージ 1 のアイコン
内部管理では0始まりにしているので、実際のエリア、ステージ番号と1つずれます。


Crown … Just用のアイコン

No0 … 一桁用の数値

No1、No2 … 二桁用の数値


こんなかんじで、フォントを使わなかったために、
No管理のオブジェクトが無駄に多いです。


この構造をPrefabで用意しておいて、
ステージ画面遷移時にInstantiateで実体化。
という流れになります。

王冠や、ケタ違いの数値は予めくっつけておき、
表示のOn/Offで見た目を制御してます。


そんなに構造が複雑でもないので、
部分部分追加するよりは、こっちの方が仕組みが単純な気はします。


複雑な構造の場合は、無駄なオブジェクトがついてると
Editor上がごちゃごちゃしがちなので、
必要な物をあとづけとかのほうが良いかもですね。


次回は、フォント部分として利用した、
テクスチャをアニメーション切り替えとして利用する方法についてです。