テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

スクリプトを書かずにゲームを作ってみる

Playmakerの挙動を理解すべく、
ちょっと縛りプレイで作ってみた。

ルールは簡単、
Monodevelopを一切起動してはいけない
C#、JSの言語を使用してはならない
・自分が過去に作ったスクリプトを使用してはならない

要するに、PlaymakerとAsset Storeだけでどこまで出来るのかって事を試してみたかった。

スクリーンショット 2012-05-11 23.08.47

作ったのは電撃イライラ棒的な何か。
ルールは、黒い床を踏むとドアが開くので、指定時間内にゴールを目指すというもの。
赤い床を踏むと最初からやり直し。

デモ

スクリーンショット 2012-05-11 22.55.58

■奮闘一時間の結果

1.まずは移動系

個人的に上から視点のゲームが作りたかったので、Character Controllersは使わず
おなじみの経路探索にぶん投げる。
移動先の設定は、【AstarPathfindingProject】サンプルのTarget Moverにお任せ。
スクリーンショット 2012-05-11 23.16.12

AstarPathfindingProjectは動的に経路検索できるから好き。

2.床のスイッチとドアの開閉

次にスイッチとドアの開閉、
ここは【Playmaker】にやってもらった。

内容は簡単。
黒いスイッチを押すと、ドアを管理しているFSMに
Send Eventで「Open Door」的な指示を出す。

ドアは「Open Door」指示を受けると「Close]から「Open」状態になり
残り時間をカウントし始める。
カウントはWaitで実施。

残り時間が0になると、「Close Door」が発動し、「Close」状態に戻る。

スクリーンショット 2012-05-11 23.22.27

ドアの開閉自体はUnity標準のAnimationで管理。

3.トラップ的なもの

赤い床はトラップとして配置。

このトラップも床とドアの原理を流用。
トラップを踏むとドアに「Close Door」を送りつける仕組み。

それをコピペで増やした…んだけど、
プレハブ化せずに増やしたお陰で、ちょっと機能追加ってのができず
時間を大幅ロスした。

ぐぬぬ


ここらへんまで、大体1時間。
Playmakerの機能を調べながらなんで、機能を概ね理解していれば
もっと早く組めるかもしれない。

次のバージョンでは、もうちょっと演出とかモデルを組み込んでみたい所。

しかし、Asset storeにある3DモデルでAnimationを含んでいるかどうかって、
どうやって判断すりゃいいんだろう