読者です 読者をやめる 読者になる 読者になる

ひつまぶし blog

無職。全てにおいてレベル1 。なのに今はニューヨークひとりぼっち。おなかすいた・・。

【Unity】Playmaker 公式チュートリアル動画を日本語で読み解く10 - Swipe Gesture

1. Direct Object Control via Swipe - スワイプした方向にCubeの向きを変える
2. Game Play Control via Swipe - Cubeをスワイプで動かしてゴールまで到達させるゲーム

 

 

1. Direct Object Control via Swipe - スワイプした方向にCubeの向きを変える

Hierarchyを作る

Empty ObjectからSixSidedDieを作る。

Cubeを置く。

f:id:hitsumabushiko:20160126091125j:plain

 

SixSidedDieを作る

Idleを作る

f:id:hitsumabushiko:20160126091157j:plain

Eventsでswipe_left、swipe_right、swipe_up、swipe_downを作っておく。

 

Swipe Upを作る

f:id:hitsumabushiko:20160126091225j:plain

Variablesのfloatでrotate_timeを作っておく。
→ただ私は、rotate_timeを使わず、0.5という値にしました。

Swipe Down、Swipe Left、Swipe Rightも作る。(動画なし)

Vectorの値をDownはXを-90、LeftはYを90、RightはYを-90で出来ます。

Runする

スタート画面でCubeがある。

f:id:hitsumabushiko:20160126091333j:plain

 

下にスワイプすると下にくるっと回転。

f:id:hitsumabushiko:20160126091433j:plain

 

横にスワイプすると横にくるっと回転。

f:id:hitsumabushiko:20160126091437j:plain

 

スワイプの距離を0.25と決めたので、小さいスワイプだと反応しない。

f:id:hitsumabushiko:20160126091510j:plain

 

 

2. Game Play Control via Swipe - Cubeをスワイプで動かしてゴールまで到達させるゲーム

 これは部品がたくさんいるので、試してない。解説だけ。

Hieraruchyを作る

SixSidedDieと、Prizeと、Maze_Win_platformと、Mazeと、go_Managerを作る。

 

f:id:hitsumabushiko:20160126091901j:plain

 

これがPrize

f:id:hitsumabushiko:20160126092526j:plain

 

Prizeの下が、Maze_win_platform。

f:id:hitsumabushiko:20160126092531j:plain

 

これだけ他のplatformと違う。こうやって離すことができる。

f:id:hitsumabushiko:20160126092537j:plain

 

Tagも設定しておく。

f:id:hitsumabushiko:20160126092702j:plain

 

Maze(Maze_Win_platformではない床)はLayerをplatformにしておく。

f:id:hitsumabushiko:20160126092738j:plain

 

Mazeはこんな感じで設定。

f:id:hitsumabushiko:20160126094001j:plain

 

go_GameManagerを作る

Setup Gameを作る

f:id:hitsumabushiko:20160126091913j:plain

f:id:hitsumabushiko:20160126091922j:plain

f:id:hitsumabushiko:20160126091927j:plain

 

idleには何もない。

f:id:hitsumabushiko:20160126092202j:plain

 

Prizeを作る

f:id:hitsumabushiko:20160126092828j:plain

 

SixSidedDieを作る 

こちらの5つに関しては、ダイスそのもの動きではなく、ダイスがMaze内でどのような状態になっているかを確認するFSM

f:id:hitsumabushiko:20160126093016j:plain

 

こちらの5つはダイス自体がスワイプで動くという部分のFSM

f:id:hitsumabushiko:20160126093037j:plain

二つの機能をSixSidedDieに入れているが、FSMを分けて作ってもよい。今回はそこまで複雑ではないので、一つに入っている。

 

idelを作る

f:id:hitsumabushiko:20160126093136j:plain

Get Key DownはUnity上で矢印キーで操作ができるように設定しているだけ。実機で確認する場合作らなくてよい。 

Swipe Upを作る

f:id:hitsumabushiko:20160126093301j:plain

iTween Move By ①

f:id:hitsumabushiko:20160126093334j:plain

f:id:hitsumabushiko:20160126093434j:plain

これを理解するには、Device Acceralationの回は別で見ておいたほうがいい。(実はこの回、私は見ていない。もちろん解説もしてない。) 

 Down、Right、Leftもよいよい作る。(動画に解説なし)
Check for Groundを作る

f:id:hitsumabushiko:20160126093740j:plain

Variablesのboolでdid_hit_objectを、GameObjectでhit_objectを作っておく。

Eventsでnext_moveとfallを作っておく。

boolで当たりましたか?と聞いて、Store Hit Objectにそれはなんだったか?を入れる感じ。

f:id:hitsumabushiko:20160126094239j:plain

Repeat Intervalは繰り返したいかどうかという項目。ただかなり負荷がかかる動きなので、0かせめて1にしておきたいところ。

 

Fallを作る

Mazeから落ちてしまった時にCubeを下に落とすアニメーションをつける。

f:id:hitsumabushiko:20160126094715j:plain

 

Reset Gameを作る

f:id:hitsumabushiko:20160126094925j:plain

f:id:hitsumabushiko:20160126094954j:plain

 

Check for Winを作る

f:id:hitsumabushiko:20160126095235j:plain

Eventsでwaitを作っておく。

 

Riseを作る

f:id:hitsumabushiko:20160126095753j:plain

GUI Textの部分は作らなくてよい。

 

f:id:hitsumabushiko:20160126095757j:plainf:id:hitsumabushiko:20160126095832j:plain

 

Runする

f:id:hitsumabushiko:20160126100025j:plain

f:id:hitsumabushiko:20160126100307j:plain

あ・・

f:id:hitsumabushiko:20160126100116j:plain

失敗。落ちていく。

f:id:hitsumabushiko:20160126100127j:plain

あ〜・・。

f:id:hitsumabushiko:20160126100457j:plain

リスタート。

f:id:hitsumabushiko:20160126100528j:plain

どんどん進める。

f:id:hitsumabushiko:20160126100507j:plain

あと少し。

f:id:hitsumabushiko:20160126100135j:plain

ゴール。

f:id:hitsumabushiko:20160126100227j:plain

ブーーン。

f:id:hitsumabushiko:20160126100233j:plain

そしてまたリスタート。

 

次の記事

 

前の記事