Unreal Engine 4 で テトリス/Tetris を一から作ってみましょう。
作業内容が多いため、記事は複数に分割しました。それぞれの記事には本記事最下の目次から移動することができます。
本記事 Part.00 では、作成するテトリスの仕様等を説明します。
実際の作業内容やブループリントの配置しか興味がない場合は、読み飛ばしてしまっても構いません。
また、一連の最終記事に本プログラムのサンプルをダウンロードできる形として置いてあるので参考にしてください。
1.参考にしたアルゴリズム
Unreal Engine 4 で作成されたテトリスというと Riftris が有名で、プロジェクトファイルもダウンロードできます。しかし自環境では(ポンコツPCを使用しており)重くて開くことが出来なかったため、参考にはできませんでした。
そこで今回作成するテトリスのアルゴリズムは動画 【プログラミング】テトリスを1時間強で作ってみた【実況解説】 を参考にしています。
2.仕様
テトリスの基本的な部分のみを作るため、エフェクト等は一切ない簡素なものとなります。また、メニュー画面や点数計算、ゲームオーバー後の処理等も追加しておりません。操作は wasd で行い、w はブロックの回転、ad は押すと横一マス移動で長押しは無効。s はブロックを下へ移動させ、長押しを有効とします。
また、次に落ちてくるブロックは右側に2つ分表示します。
3.必要なクラスと処理の流れ
テトリスの作り方は何通りも考えられ、今回の方法が最善とは言えないことは念頭に置いてください。今回は
- Tetris という Actor クラスでテトリスのほとんどの処理を行い
- Blocks という Pawn クラスを
- Tetris Controller という PlayerController クラスで操作
もう少し詳しく説明すると、Blocks が地面もしくは他ブロックの上に着地すると、操作している Blocks を消し、同じ形のブロックを Tetris 側で表示させます。再び新しい Blocks をコントロールし、同じ処理を繰り返します。
処理の流れを簡単にチャートにすると以下のようになります。
それでは次回から作っていくことにしましょう。
-目次-
Part.01.キューブの作成
Part.02.フィールドの作成
Part.03.様々な形のブロックの作成
Part.04.カメラとブロックの配置
Part.05.ブロックの移動処理
Part.06.ブロックの接地処理
Part.07.ライン消去処理
Part.08.自動落下とゲームオーバー処理
Part.02.フィールドの作成
Part.03.様々な形のブロックの作成
Part.04.カメラとブロックの配置
Part.05.ブロックの移動処理
Part.06.ブロックの接地処理
Part.07.ライン消去処理
Part.08.自動落下とゲームオーバー処理
0 件のコメント:
コメントを投稿