テトリス風ゲーム
Unity Version 2022.3.4 目 次 パーティクル(ParticleSystem) 前回まで、よりゲームらしくするためにテトリミノのアニメーション処理を実装してきた。今回からさらにゲームらしい演出を加えるため、パーティクル(ParticleSystem)を適用していく。 ライン…
Unity Version 2022.3.4 目 次 前回の続き 前回は、テトリミノ落下時の移動を単純なTranform.localPositionを使った移動から、DoTween を使ったアニメーション処理に変更した。それに伴ってアニメーション処理中を表現するステートを追加した。今回は、前回…
目次に戻る 前回のつづき 前回は、レベルとスコア、UIについて確認した。今回はテトリミノの高速落下とステート管理について確認する。 Unreal Engine Version 5.3.2 テトリミノのステート管理 ステート管理方法は、Unity での実現方法と差分はない。Enum で…
目次に戻る 前回のつづき 前回は、テトリミノ着地後のライン削除処理について確認する。今回は、レベルとスコア、UIについて確認する。 Unreal Engine Version 5.3.2 UMG(Unreal Motion Graphics) レベルとスコアを計算するロジック部分の実装は、Unity と…
目次に戻る 前回のつづき 前回は、テトリミノの落下後の着地とブロック化処理について確認した。今回は、テトリミノ着地後のライン削除処理について確認する。 Unreal Engine Version 5.3.2 LineTrace 再び ライン削除処理の大まかな流れは、以下のとおり。 …
目次に戻る 前回のつづき 前回は、キーイベントによるテトリミノの移動と回転について確認した。今回は、テトリミノの落下後の着地とブロック化処理について確認する。 Unreal Engine Version 5.3.2 UInterface によるコールバック Unity によるテトリスの実…
目次に戻る 前回のつづき 前回は、フィールドの作成とカメラ設定について確認した。今回は、キーイベントによるテトリミノの移動と回転について確認する。 Unreal Engine Version 5.3.2 Enhanced Input Unity では、Input System を使い定義したAction とMon…
目次に戻る 前回のつづき 前回は、テトリミノの落下動作とブロックとの衝突判定について確認した。今回は、フィールドの作成とカメラ設定について確認する。 Unreal Engine Version 5.3.2 カメラ画角の設定(OrthoWidth) Unity では、高さ(OrthographicSiz…
目次に戻る 前回のつづき 前回は、複数のブロックをまとめてテトリミノとして表示させるところまで確認した。今回は、テトリミノの落下動作とブロックとの衝突判定について確認する。 Unreal Engine Version 5.3.2 テトリミノの落下動作 Unity では、以前説…
目次に戻る 前回のつづき 前回は、Unreal Engine でブロックを1つ表示させるところまで説明した。今回は、複数のブロックをまとめてテトリミノとして表示させるところまで確認する。 Unreal Engine Version 5.3.2 カメラの設置 テトリミノを作る前に、その様…
目次に戻る Unreal Engine Version 5.3.2 はじめに Unity を使ってテトリス風ゲームを作成したが、同じものをUnreal Engine で作るとどうなるのかを考えてみる。 Unreal Engine だとどう作る? テトリスに必要なものは以前ここで整理しているので、それをUnr…
Unity Version 2022.3.4 目 次 前回の続き 前回はテトリミノの自由落下時にDOTween によるアニメーションを適用してみた。前回は触れていないが、アニメーションを適用する場合は状態管理と非同期処理について注意する必要がある。今回はそのあたりを整理す…
Unity Version 2022.3.4 テトリミノの落下アニメーション#1 前回までで、基本的なテトリスゲームの実装が完了し遊べる形にはなった。今回からは、よりゲームらしくするため、アニメーション処理について考えていく。 通常のゲームでは、ユーザのインタラクシ…
まとめ ここまでで作成したソースコード、Unity Project の構造などの情報を掲載。 GameConrtol Object Field Object NextArea Object GameTitle Object StartButton Object GamePlay Object GameOver Object RestartButton Object Block Prefab Tetrimino P…
Unity Version 2022.3.4 目 次 前回の続き 前回はスコアとレベルについて説明した。今回はゲームオーバー画面とリスタートについて説明する。 GameOver 画面 GameOver 画面はシンプルにテキストコンポーネントとボタンコンポーネントのみで構成。 GameOver …
Unity Version 2022.3.4 目 次 前回の続き 前回はテトリミノの高速落下とゲーム、テトリミノのステートについて説明した。今回は、スコアとレベルについて説明する。 ライン削除イベントとレベルアップイベントのコールバック スコアアップ、レベルアップの…
Unity Version 2022.3.4 目 次 前回の続き 前回、タイトル画面上のスタートボタンでゲームを開始し、テトリミノをフィールドに配置して落下させるまでを説明した。今回はテトリミノの高速落下とゲーム、テトリミノのステートについて説明する。 テトリミノの…
目次に戻る 前回の続き 前回フィールドの作成、ライン削除・落下処理の説明を行った。今回はタイトル画面からスタートボタンでゲームを開始し、テトリミノをフィールドに配置して落下させるまでを説明する。 タイトル画面 タイトル画面UI は以前検討したとお…
Unity Version 2022.3.4 目 次 前回の続き 前回までテトリミノの操作について実装を説明してきたが、今回はフィールドの生成とライン削除、ライン落下について説明する。 フィールドの作成 フィールドの基本情報(高さ、幅、枠の厚み)は、定数として事前に…
Unity Version 2022.3.4 目 次 前回の続き 前回、入力イベントとテトリミノの移動を説明した。今回はテトリミノの回転について実装方法の説明をする。 テトリミノの回転 左右回転キーのAction は、下記のOnTurnLeftEvent とOnTurnRightEvent コールバック関…
Unity Version 2022.3.4 目 次 前回の続き 前回テトリミノの生成から落下までを説明したので、今回は入力イベントの受け取り方とテトリミノの移動を説明する。 入力イベントとテトリミノの移動 まずはテトリミノが移動、回転を開始するトリガーとなるイベン…
Unity Version 2022.3.4 目 次 前回の続き 全体像の整理はできたので、各クラスの具体的な実装をユースケースごとに説明していく。 テトリミノの表示と落下 Tetrimino と Block は、動的に生成するためPrefab 化する。Prefab 化しておくと簡単にその複製(イ…
目 次 Unity Version 2022.3.4 全体構造の整理 前回までで何を作るかどう作るかが整理できたので、今回からプロト実装をベースに具体的な実装を検討していく。 構造の整理 まず実装を考える前に、何をGameObject として、何をMonoBehaviour クラスとして、何…
前回の続き 前回はゲームオーバー画面とリスタートボタンまで整理ができたので、残るタイトル画面とゲームスタートボタンを考える。ここまでできれば、タイトル画面→ゲームスタート→ゲームオーバー→ゲームリスタートの一連の流れが整理できたことになる。 タ…
前回の続き 今回はゲームオーバーとリスタートについて考える。 ゲームオーバーとリスタート ゲームオーバーになる条件は、Next テトリミノがフィールド上に移動したときに、フィールド内のブロックと重なった場合である。 ゲームオーバーになった場合は、ゲ…
Unityでゲームを作る Unity でテトリス風ゲームを作る! Unity を使ってゲームを開発する流れを理解するために、定番のテトリス風ゲームを作ってみます。 Unity Version 2022.3.4 目次 1. なにを作るか? テトリスの要素、ルール、ゲーム画面 2. どう作るか…
前回の続き 前回、Next エリアをどうするかが決まったので、今回はスコアとレベルについて考える。 スコアとレベル スコアが入るのは、テトリミノが着地してラインが削除された時。一度に削除されるラインの数によって、スコアが高くなるようにする。 今回は…
前回の続き 前回までで、テトリミノの生成と落下、左右下への移動、左右回転、着地と削除と一連の流れの作り方が整理できた。 Next テトリミノ 今回は、Next テトリミノの実現方法について考える。 Next テトリミノは、次に落下予定のテトリミノを示している…
前回の続き 前回テトリミノの移動・回転操作の実現方法について確認できたので、今回はブロック削除について考える。 ラインの削除とブロックの落下 テトリミノが着地後、すべてがブロックで満たされたラインはそのライン上のブロックを消し、それより上にあ…
前回の続き 前回テトリミノの生成と落下まで実現方法が決まったので、今回は操作を考える。 テトリミノの操作 テトリミノは最低限キーボードで操作したい、できればコントローラーでも操作できるとよい。Unity ではInput System という仕組みが提供されてい…