ぬるーむ

Unity初心者が誰もが知っているゲームの模倣をしています。個人的な備忘録ですが、入門書を読み終えたばかりの初心者の方は「こんなへなちょこでもいいのか!」「俺の方がうまく作れる」と作成意欲がわいたりするかもしれません。

パックマン

Unityによるパックマンの作り方 ~完成~

GameManagerクラスの作成 ゲーム開始 パックマンが食べられる ゴーストが食べられる エサ、パワーエサを食べる 恐慌状態の解除 スコアの表示 完成 まとめ GameManagerクラスの作成 GameManagerクラスでゲーム全体の管理をします。 ゲーム開始 CoroutineStart…

Unityによるパックマンの作り方 ~BGM・SEを再生する~

BGM・SEを管理する専用のクラス、SoundManagerを作成します。どこのクラスから使用されてもいいようにシングルトンにします。 SoundManagerクラス public class SoundManager { private readonly AudioSource bgmAudioSource; private readonly AudioSource …

Unityによるパックマンの作り方 ~アイテムの作成~

オブジェクトの作成 クラスの作成 エサ パワーエサ フルーツ 迷路に設置 オブジェクトの作成 16px × 16pxの画像を用意し、Pixels Per Unitを8にします。画像からSpriteを作成し、CirlceCollider2Dをアタッチします。適当にColliderの大きさを設定します。ま…

Unityによるパックマンの作り方 ~ゴーストの仕様~

アカベイ ピンキー アオスケ グズタ すべてのゴーストは待機状態から始まり、巡回→追跡→巡回を繰り返します。オリジナルでは巡回・追跡のループを重ねるごとに各状態の実行時間が変化するようですが、面倒なので今回は常に巡回を7秒、追跡を20秒としました。…

Unityによるパックマンの作り方 ~ゴーストのアニメーション~

通常、恐慌、死亡時のアニメーションをサブステートマシンを使って作成します。すべてのアニメーションはAny Stateから遷移するようにします。 Animation ControllerのParametersに以下の変数を作成します。 float DirX float DirY bool isScare bool isCalm…

Unityによるパックマンの作り方 ~ゴーストのAI~

概要 Waypointsの取得 TileUtilityの作成 AAIの作成 各ゴーストのAIの作成 概要 Waypointに到達するごとに次のWaypointを取得するこで経路を決定します。以下のものが必要になります。 Waypoints:ゴーストが移動できる全座標のリスト。 Tile:Waypoint同士…

Unityによるパックマンの作り方 ~ゴーストの移動~

概要 Waypointsの設定・取得 待機・準備・巡回状態でのWaypoints 死亡状態でのWaypoints 追跡・恐慌・帰還状態でのWaypoints Moverの作成 概要 ゴーストが移動できる座標(Waypoint)のリスト(Waypoints)とWaypointに向かって移動させるMoverクラスが必要にな…

Unityによるパックマンの作り方 ~ゴーストの状態~

IStateを継承したクラスで、ゴーストの状態の遷移と、そのときの行動を処理します。Dictionary<State, IState>とenum Stateで各stateを登録・参照し、Mover、Animatorで移動、アニメーションを行います。 状態とそのときの行動 移動に関しては下記を参照してください。 null</state,>…

Unityによるパックマンの作り方 ~ゴーストの作成~

ゴーストオブジェクトの作成 状態の管理 抽象クラスAGhostの作成 各ゴーストのクラスを作成 アカベイ ピンキー アオスケ グズタ 完成 ゴーストオブジェクトの作成 16px × 16pxの画像を用意し、Pixels Per Unitを8にします。画像からSpriteを作成し、Rigidbod…

Unityによるパックマンの作り方 ~パックマンの作成~

Pacmanオブジェクトの作成 Pacmanクラスの作成 移動 当たり判定 フレームごとの移動 ワープ 食べる アニメーション 完成 仕様はいたってシンプルです。 キーを押したら障害物にぶつかるまで進み続ける。 移動中にキーを押すと、その方向に移動できるようにな…

Unityによるパックマンの作り方 ~半自動でBoxCollider2Dをセット~

ColliderMapの作成 ColliderMapから矩形を取得 BoxCollider2Dをアタッチ BoxCollider2Dに必要な中心座標、サイズをを取得したいが、直接迷路の画像から取得するのは難しい。なので、まずデータ取得用の画像(ColliderMap)を作成し、そこから必要なデータを取…

Unityによるパックマンの作り方 ~迷路の作成~

Mazeオブジェクトの作成 BoxCollider2Dをアタッチ ワープ地点の作成 Mazeオブジェクトの作成 迷路の画像を用意しスプライトを作成します。 迷路の画像 Pixel Per Unitを8、Pivotを左下にします(左下を原点にしておくと今後わかりやすいので)。 迷路の画像の…

Unityによるパックマンの作り方

迷路の作成 パックマンの作成 ゴーストの作成 アイテムの作成 BGM・SEを再生する 完成 主に下記サイトを参考にしました。これらのサイトを読めば十分かもしれません(笑)。ただ、どのサイトも古く(まぁ、パックマン自体が古いが)、英語のサイトなので日本語で…

unityroomに自作ゲーム 「Let's Eat」 を公開しました

パックマンもどきのゲーム「Let's Eat」をunityroomに公開しました。近いうちに作成の解説も公開する予定です。 Let's Eat unityroom.com