Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

36 total results found

自動的にブロックを配置しよう~

ブロック崩しゲーム

お試しで手動でいくつかのブロックを配置したが、なかなか面倒な作業なので、自動的に配置しましょう。 スクリプト まず、手動で配置したブロックのすべてを消しましょう。その後、新しいスクリプト「BlockManager」を作成しましょう。このスクリプトは: 実行中にプレハブからブロックを生成する Inspectorで「行数」と「列数」を設定できるようにする BlockManager の位置から始め、連続にブロックを配置して行く まずは、変数から始めましょう: スクリプトの変数 using UnityEngine; ...

ボール跳ね返す角度をコントロールする

ブロック崩しゲーム

目的 今の作りだと、ボールがパドルを当たると、入射角を反転し、外向角になるだけで、プレーヤーがボール行かせたい方位を変えることができない。ある程度、ボールを行き先をコントロールできるように、パドルの「当たる部分」によって、跳ね返す向きを調整する処理を入れましょう。 これで、ボールがパドルの左側に当たると、ボールが左に行く。真ん中を当たると、真上に返す。右側を当たると、右に行くようにする。 解決のアイディア ボールとパドルの相対位置がポイント。ボールが衝突したら、パドルの位置とボールの位置を使い、その向きに返せば良...

ゲーム終了処理

ブロック崩しゲーム

次、「ゲームクリア」と「ゲームオーバー」の処理を追加しましょう。 ゲームオーバー このゲームでは、残機3つがあり、ボールが失ったら残機1つが減る。残機がゼロになった場合は「ゲームオーバー」にする。すでに「ボールが失ったら…」(BallDestroy)という処理があるので、これを活用できる。 ゲーム監督クラス「GameManager」を作成し、残機の数を追跡しましょう。BallDestroyのとき、GameManagerを呼び出し、残機を減らす処理を実装してみましょう: // ゲーム監督 public class G...

UIを作成

ブロック崩しゲーム

ゲームが動くが、画面になにも情報がなく、Canvas を使い、ゲームの状況を可視化しましょう。 Canvasの準備 まず、Canvas を作成し、残機とスコアの表示場所を作りましょう。 スコア スコアは画面の右上に表示しよう。テキストをを表示するので「TextMeshPro」で良いでしょう。必ず右上に出したいので、アンカーが画面の右上を追跡するようにしてください。位置を文字のサイズを調整し、とりあえず、「SCORE: 00000」を表示するようにしてください: 残機 残機は、スプライトの表示・非...

ゲームオーバー UI

ブロック崩しゲーム

現状、ゲームが終わるとき、Debug.Log でメッセージを表示しているが、その代わりに Canvas で「ゲームオーバー」を表示し、「さいかい」と「おわり」のボタンを実装しましょう! シーンの準備 スプライト分割 まず、ブロックと同様に、画像を分解しないといけない。ただし、行列ではないので、きれいに縦横で分割できない。この場合は、マウスを使い、各スプライトの領域を定義しましょう: 3つのスクリプトを分割したら、「Apply」ボタンを押し、シーンを編集しましょう Canvasの準備 すでに作ったゲーム用の Can...

サウンドを追加

ブロック崩しゲーム

ボールが何かと衝突、またはボールが失ったらサウンドを再生するようにしましょう。 ボールとパドル 新しい「BallHitSound」のスクリプトを作成し、以下の処理しましょう: サウンドファイルを Inspector で設定する 衝突の時 ( OnCollisionEnter2D )、ボールのタグを確認する ボールだったら、設定したサウンドを AudioSource.PlayClipAtPoint() で再生する。 // ボールが衝突したら、サウンドを再生 public class BallHitSound : ...

プロジェクト設定

ティミーの伝説

まず、新規プロジェクトを作成しましょう。2Dゲームであるため「Universal 3D」を選んでください。プロジェクト名は「legend」にしましょう。 素材を追加 3Dモデル 主人公(Timmy)とゾンビのモデル(Mixamo) キャラクターのアニメーション ステージ作成のパーツ(Kenney) 画像、テクスチャ プロトタイプ用のテクスチャ UIのスプライト フォント(Google Fonts) すべての素材をプロジェクトに追加しましょう。 プロトタイプ用のシーンを構築 本番のシーンを作る前、各...

Timmyの移動を実装

ティミーの伝説

主人公のゲームオブジェクトを作成 主人公のキャラクターの移動を実装しましょう。まず、空のゲームオブジェクトを作成し、「Player」という名前を付けてください。このゲームオブジェクトはプレーヤーの役割にする。 3Dモデルを追加 Characters/Timmy/Models から Timmy のモデルを追加してください。Player の子オブジェクトとして追加しましょう: よく見ると、色が多少おかしい。これはノーマルマップ(※)の問題であるので、解決しましょう。Characters/Timmy/Textures ...

主人公を追いかけるカメラ

ティミーの伝説

Timmyの移動できたとしても、操作が確認しにくいので、プレーヤーを追いかけるカメラ(三人称視点)を作りましょう 単純なアプローチ 一番簡単なのは「カメラの位置を主人公の位置にしろ!」の仕組みである。これをすぐ試せるので、「CameraController」スクリプトを作成してみましょう: スクリプト // 主人公を追いかけるカメラ public class CameraController : MonoBehaviour { // 追いかけるオブジェクトのTransform [SerializeF...

マウスでカメラを回転

ティミーの伝説

Timmyをカメラに相対的に移動する

ティミーの伝説

ジャンプを実装

ティミーの伝説

アニメーションを追加

ティミーの伝説

アイテムを拾う

ティミーの伝説

宝箱を作成

ティミーの伝説

UIを作成

ティミーの伝説

ゾンビを実装

ティミーの伝説

課題

ティミーの伝説

Timmyの伝説に新たな機能を追加し、よりも面白くする! 例えば… HP回復アイテムを実装 罠を作成(消えるプラットフォーム→穴に落ちる) ドアを実装 定めたコインの数がないと開かない また、レバーを引くと開く HPゼロのときに、倒れるアニメーションを再生し、ゲームオーバーする 宝箱を開くと、コイン10個が飛んで出てくる 移動プラットフォームを実装 ボールを投げ、ゾンビを倒す その他の好きな機能(自由) ルール 1つの機能を実装すると:合格(最低限) 難しいことを頼んでいない! 自分のスキルレベルに合...