Advanced Search
Search Results
36 total results found
ゲームエンジンⅠ
C#言語の入門し、Unityで初めてのゲームを作ろう!
ブロック崩しゲーム
Unity2Dのシンプルなゲームを作ってみましょう。
C#の入門
変数と型
練習課題 記入できるファイルをダウンロード 変数の宣言と代入 ゲームを作っている間に、ゲームに関するいろんなデータを管理しなければならない。以下のデータについて考え、最も適する「データ型」を選択してください。 データ 型 例 プレーヤーの点数 整数型(int) int points = 100; プレーヤーの名前 答え 文字列(string) 答え string playerName; 現在持っているアイテムの数 答え 整数型(int) 答え int i...
比較
練習課題 記入できるファイルをダウンロード C#を読みましょう 以下の表は、C#で書いた命令とその日本語の意味が書いてある。空枠を完成してください。 C# 日本語 a > b 変数「a」は変数「b」よりも大きい? i <= 10 答え 変数「i」は「10」以下? 答え playerHP > 0 プレーヤーの体力は残っている? stageSelect == "Tutorial" 答え 選択されたステージはチュートリアルであるか? ...
条件分岐
練習課題 記入できるファイルをダウンロード C#の処理を完成してみましょう 1. 以下のC#のプログラムを完成してください // ゲームでダメージを受け、残機を確認し、ゲームオーバーかどかう判定する int hp = 50; // 体力 int lives = 1; // 残機 int damage = 100; // ダメージ // ダメージを受け、体力を減らす ________________________________________ // もし、体力が0以下だったら... __________...
ティミーの伝説
初めての3Dゲームを作ってみましょう
繰り返し
決まられた回数を繰り返す命令「for」 記入できるファイルをダウンロード 練習課題 C#を読みましょう 以下の表は、C#で書いた命令とその日本語の意味が書いてある。空枠を完成してください。 C# 日本語 for(int i = 0; i < 10; i++) 「i」という変数は 0から9までの値を変えながら、10回繰り返す for(int i = 1; i <= 10; i++) 答え 「i」という変数は 1から10までの値を変えながら、10回繰り返す for(int...
配列
練習課題 記入できるファイルをダウンロード C#を読みましょう 以下の表は、C#で書いた命令とその日本語の意味が書いてある。空枠を完成してください。 C# 日本語 int [] numbers = new int[10] 10個の整数が入る「numbers」という配列を作成 int [] numbers; 答え 整数型の配列を宣言のみ(初期化なし) string [] names = new string[5]; 答え 5個の文字列が入る「names」という配列を作...
メソッド
練習問題 C#を読みましょう int Sum(int a, int b) { return a + b; } 説明: 2つの整数(aとb)を足して、その結果を整数として返す int Max(int a, int b) { if (a > b) return a; else return b; } 答え 2つの整数(aとb)の最も大きい数値(最大値)を返す bool CheckHasItem(string[] itemList, string i...
総合練習
変数、条件分岐、配列(またはリスト)、列挙、メソッドとクラスを使い、以下のスクリプト作りましょう ポーカー手札の判定 参考:ポーカー・ハンドの一覧 目標 手札にある5枚のカードを確認し、評価し、Debug.Logで判定を表示。 例:A♥ A♦ 10♣ 7♦ 3♠ - ワンペア を表示するのは目標である 解析 かなり大きな課題なので、わかりやすい「ミニ課題」に分割しましょう! スート スートは「ハート(Heart)、ダイヤ(Diamond)、クラブ(Club)、スペード(Spade)」のことである。固定である値なので...
クラス
C#の純粋クラス vs MonoBehaviour お気づきかもしれないが、通常のC#クラスとUnityの「MonoBehaviour」クラスにはいくつかの違いがある。基本的に、どちらのクラスもプロパティ(クラス変数)とメソッドを持てる。しかし、大きな違いもある。 通常のC#クラスはUnityエディターでは使用できない。GameObjectにアタッチできるのはMonoBehaviourのみである。 通常のC#クラスはnewキーワードを使ってインスタンス化するが、MonoBehaviourは直接インスタンス化できな...
プロジェクト設定
プロジェクト作成 まず、新規プロジェクトを作成しましょう。2Dゲームであるため「Universal 2D」を選んでください。プロジェクト名は「breakout」にしましょう。 素材を追加 ゲームに必要な素材を「Project」に追加しましょう。今回必要なのは 画像、絵 プレーヤーの「パドル」 ボール 各種のブロック(レンガ) 背景 UIに使う「ゲームオーバー」とボタン サウンド BGM 効果音 ボールとパドルの衝突 ボールと壁の衝突 ボールが失うときの音 「Sprites」と「Sound」フ...
課題
ブロック崩しゲームに新たな機能を追加し、よりも面白くする! 例えば… ハイスコア:ゲームを再開のあとに、最大のスコアが残る 1UP:1UPのアイテムを追加し、ボールで当たると、残機1つが増える マルチボール:特定のブロックを当たると、ボールが重複する マルチプレイ:2つのパドルを利用し、別々の入力で制御し、スコアも別々に管理 最後にボールを跳ね返したプレーヤーは点数をもらう ステージ2:ステージ1をクリアすれば、別のステージを始める 硬いブロック:別の色のブロックがあり、1回当たると色が変わり、もう1回当た...
パドル(Player)の移動
パドルが左右に移動できるようにしましょう。このスクリプトを使って: 左キーと右キーがInspectorで設定できるようにしたい。 速度もInspectorで調整できるようにしたい。 右か左キーを押したら、設定した速度をリジッドボディに与える(Rigidbody2D.linearVelocity) Scripts フォルダーの中に、新しいスクリプト「PlayerMove」を作成し、上記の機能を実装してみましょう。 スクリプトの変数 using UnityEngine; // パドルを移動するスクリプト publ...
ボールプレハブ
ボールがシーンに直接に追加するものではなく、実行中に生成するものであるため、プレハブとして作成しなければならない。とりあえず、現在のシーンを活用し、プレハブができたら、削除すれば良いでしょう。 プレハブ構築 シーンにボールのスクリプトをドラッグドロップで追加し、丸い「CircleCollider2D」を付けてください。ボールも物理的に動かす予定で、リジッドボディも追加してください。 ※ボールが見えなければ、「Order In Layer」または Z軸の位置を適切に変えてください 今回も重力を使わないので、「Gra...
ボールをどんどん生成
作ったプレハブを利用し、実行中にたくさんのボールを生成しましょう。 ボール生成する:BallShooter 今度のスクリプトは: 作成したプレハブを Inspector で指定できるようにする。 マウスの左ボタンを押したら、プレハブから実際に使うオブジェクトを生成。 最大数を制限する。 スクリプトの変数 Scripts フォルダーの中に新しい「BallShooter」を追加し、Inspector の変数を準備しましょう: using UnityEngine; // ボールを生成するスクリプト public c...
ブロックのプレハブ
つぎ、ブロックのプレハブを作成し、ボールが当たったら消える処理を作りましょう。 画像の前準備 ブロックの画像(スプライト)は、他のスプライトと比べて、1つではなく、同じ画像に多数が一緒にまとまっている。必要なメモリーの使用量を最適化するためにゲーム開発の中でよくある作戦である。 ただし、まとまったままで使えないので、先に分割しないといけない。このため、Unityは「Sprite Editor」(スプライトエディタ)がある。 まず、ブロック画像を選択し、Inspectorで「Open Sprite Editor」を選...