Unity2017でPongを作成する方法

Unity Engineは、ゲームの開発を容易にすることを目的としたゲーム開発エンジンです。多くの初心者、特にコーディングの経験がない人にとって、ビデオゲームを作成するというアイデアは困難な作業のように思えますが、Unityのような開発エンジンを使用すると、そのプロセスをはるかに簡単にすることができます。



ショックドクター テニス肘サポートストラップ

1 10の: プロジェクトの作成

  1. 1 [Unityプロジェクト]タブの[新規]をクリックして、新しいプロジェクトを開始します。
  2. 2 プロジェクトに名前を付け、[2D]ボックスがオンになっていることを確認します。 次に、右下隅にある[プロジェクトの作成]ボタンをクリックします。広告

2 10の: Unityエディターの探索

  1. 1 左側を確認します。 これは、現在見ているシーンと、シーン内にあるゲームオブジェクトです。現在、シーンの名前は「無題」で、その中の唯一のオブジェクトは「メインカメラ」です。この領域は「階層」とも呼ばれます。
  2. 2 階層内のカメラをクリックして選択します。 これにより、青色で強調表示されます。
  3. 3 検査官を探します。 画面の右側はインスペクターであり、これにより、選択しているゲームオブジェクトのプロパティが表示されます。 「メインカメラ」が現在選択されているため、左側の階層で青色で強調表示されているため、インスペクターはメインカメラのプロパティを表示します。
  4. 4 下部にあるアセットフォルダーとコンソールを確認します。 これは、ゲーム内のすべてのアセット(カメラ、シーン、スクリプトなど)が保存される場所です。これは、Unityで使用するファイルをインポートできる場所でもあります。
    • [プロジェクト]タブをクリックして、アセットフォルダがまだ開いていない場合は開いていることを確認します。
  5. 5 画面の中央にあるシーンビューを見つけます。 これにより、現在シーンにあるものが表示され、矢印が指しているボタンを使用して、シーンビューとゲームビューを切り替えることができます。
    • シーンビューのすぐ上には、シーンを再生したり、シーンを一時停止したりして、通常のプレーヤーでどのように見えるかを確認できるボタンがあります。
  6. 6 マニピュレータボタンを見つけます。 最後に、左上隅に、シーンとその中のオブジェクトをさまざまな方法で操作できるさまざまなオプションが表示されます。広告

3 10の: プレーヤー1の作成

  1. 1 プレーヤー1を作成します。 開始するには、をクリックしてスプライトをダウンロードします ここに
  2. 2 スプライトをアセットフォルダーにインポートします。 コンピューター上の画像が保存されている場所を見つけ、そのフォルダーからUnityエディター内のアセットフォルダーにドラッグします。
  3. 3 階層内を右クリックして2Dオブジェクトに移動し、スプライトを作成します。
    • 作成したスプライトがメインカメラの子ではないことを確認してください。カメラの横にドロップダウン矢印がある場合は、誤ってスプライトをメインカメラの子にしています。階層内にこのようなものがないことを確認してください。
    • 子の場合は、スプライトをつかんで、階層の少し内側にドラッグします。これはそれを解き放ちます。
  4. 4 作成したオブジェクトをクリックすると、右側にそのオブジェクトに関する情報が表示されます。 この領域はインスペクターと呼ばれ、ここでオブジェクトに関するいくつかの変更を行うことができます。まず、名前を「Player1」に変更します。
  5. 5 オブジェクトの位置を(0、0、0)に設定します。 オブジェクトが画面外に配置される可能性のある変換値で始まる場合があるため、新しいオブジェクトを作成するときは必ず確認してください。
  6. 6 スプライトをプレーヤー1のスプライトレンダラーに適用します。 シーン内のプレーヤー1をクリックし、スプライトをアセットフォルダーからインスペクターのスプライトレンダーコンポーネントの[スプライト]ボックスにドラッグします。
  7. 7 Box Collider2Dをパドルに追加します。 [コンポーネントの追加]をクリックして、[Box Collider 2D]を検索します。これが、単なるBox Colliderではなく、2Dバージョンであることを確認してください。
  8. 8 同じプロセスを使用してRigidbody2Dを追加します。 [コンポーネントの追加]をクリックして、[リジッドボディ2D]を検索します。インスペクターで、リジッドボディのいくつかのプロパティを変更します。
  9. 9 'GravityScale'を0に変更します。 これにより、パドルが重力の影響を受けないことが保証されます。
  10. 10 [制約]ドロップダウンメニューをクリックし、x値が[フリーズ位置]、z値が[フリーズ回転]をオンにします。 これにより、パドルはY軸内でのみ移動するか、単に上下にのみ移動します。広告

4 10の: パドルコードを書く

  1. 1 パドルの動作を制御するスクリプトを作成します。 下部の[アセット]メニューを右クリックして、[ 作成する >> C#スクリプト 。スクリプトに「Paddle」という名前を付けて、追跡しやすいようにします。
  2. 2 新しく作成したスクリプトをダブルクリックして開きます。
    • C#スクリプト内には、空白のプロジェクトが必要です。
  3. 3 上下の矢印を宣言するStart()関数の上にコードを入力し、プレーヤーを移動する方法を示します。
      rigidBody = GetComponent();
    • 上下は、後でパドルを上下に動かすために設定するキーです。 Rigidbody2Dは、プレイヤーが移動できるように変更するものです。
    • 新しいコードを入力すると、側面に黄色のバーが表示されます。これは、スクリプトに最近追加されたコードを示しており、スクリプトを保存すると消えます。
  4. 4 Rigidbody変数に、以前にパドルに取り付けられた「Rigidbody」を見つけるように指示します。 タイプ Rigidbody2D rigidBody; 開始関数の内部。
  5. 5 更新機能に次のように入力します。
      rigidBody = GetComponent();
    • これにより、パドルが上下に押したときにどのように動くかがわかります。基本的に、プレーヤーが「上」ボタンを押すと、毎秒7ユニット上に移動し、「下」を押すと、毎秒7ユニット下に移動し、何も押さない場合は移動しません。
  6. 6 押す Ctrl + S スクリプトを保存するには、。 タブで戻るか、Visual Studioを閉じて、Unityエディターに戻ります。広告

5 10の: プレーヤー2の作成

  1. 1 階層内でプレーヤー1ゲームオブジェクトをクリックして、シーン内で選択します。
  2. 2 PlayerスクリプトをPlayer1ゲームオブジェクトに適用します。 プレーヤー1の[コンポーネントの追加]をクリックして、プレーヤースクリプトの名前を検索します。この場合、名前は「パドル」です。
    • スクリプトをクリックして、アセットメニューから右側のインスペクターにドラッグすることもできます。
  3. 3 プレーヤー1のパドルを選択します。 インスペクターの「パドル」コンポーネントの下に、上または下を選択するためのドロップダウンメニューがあります。プレーヤーを上下に動かしたいキーを選択します。この例では、「W」キーと「S」キーが使用されています。
  4. 4 プレーヤーを画面の左側に移動します。 シーン内のプレーヤー1をクリックし、位置のX値を-8に変更します。
  5. 5 現在のプレーヤーをプレハブと呼ばれるものにして、プレーヤー2を作成します。 これを行うには、シーンでそれを選択し、アセットパネルにドラッグします。これにより、プレハブが作成されます。
  6. 6 そのプレハブをシーンにドラッグして戻します。 これで、Player 1のクローンが作成されました。ただし、このクローンは、必要に応じて異なる値を取ることができます。
  7. 7 新しいオブジェクトの名前を「Player2」に変更します。 x値を正の8に変更し、以前と同じ方法でこのオブジェクトを移動するようにキーを設定します。今回は上下の矢印を使用します。
  8. 8 上部の再生ボタンを押します。 ゲームの実行を確認でき、異なるキーで移動できる2つの異なるオブジェクトがあります。広告

6 10の: プレイエリアの作成

  1. 1 シーンを右クリックします。 [空を作成]をクリックして、Box Collider2Dをオブジェクトに追加します。
  2. 2 オブジェクトを移動して、画面の上部に近づけます。 左上の移動ツールを選択します。
  3. 3 ゲームオブジェクトの緑色の矢印をクリックします。 上に向かってドラッグして、上壁を作成します。
  4. 4 [コライダーの編集]をクリックして境界を変更し、左右のパドルからすべての領域をカバーするようにします。
    • 階層内の壁をクリックすると、緑の壁の輪郭が消えますが、心配しないでください。まだそこにあります。選択されていない限り、表示されません。
  5. 5 階層の一番上の壁を右クリックし、[複製]をクリックします。 次に、パドルの下にドラッグして、下の壁として機能させます。
  6. 6 結果を確認してください。 これはそれがどのように見えるべきかです。広告

7 10の: ボールの作成

  1. 1 前後に打つボールを作成します。 ボールのスプライトをダウンロードする ここに
  2. 2 ダウンロードしたスプライトをUnityエディターにインポートします。
  3. 3 階層を右クリックして、スプライトを作成します。 このスプライトの名前を「ボール」に変更します。
  4. 4 インポートしたスプライトをゲームオブジェクトに適用します。
  5. 5 Circle Collider2DとRigidbody2Dを追加します。 重力スケールを0に、角度ドラッグを0に回し、最後にz軸の回転をロックするように設定することを忘れないでください。
  6. 6 ボールの物理マテリアルを作成します。 これはそれが壁で跳ね返ることを可能にするものです。アセットフォルダを右クリックして、[物理マテリアル2Dの作成]に移動します
  7. 7 マテリアルに「バウンス」のような名前を付けます。 '摩擦を0に、バウンスを1に設定します。これにより、速度が失われることはありません。
  8. 8 ボールゲームオブジェクトのリジッドボディにマテリアルを適用します。 広告

8 10の: ボールコードの作成

  1. 1 アセットフォルダを右クリックして、 作成する >> C#スクリプト スクリプトに「Ball」という名前を付けます。次に、そのスクリプトをダブルクリックして開きます。
  2. 2 タイプDirection()開始関数の上、および
       public   KeyCode   up  ;   public   KeyCode   down  ;   Rigidbody2D   rigidBody  ;  
    Start()関数内。
    • これにより、ボールのリジッドボディにアクセスできるようになり、力を加えることができます。
  3. 3 ボールの速度を設定する関数を作成します。 「Start()」および「Update()」関数の下に次のように入力します。
          if  (  Input  .  GetKey  (  up  ))   {   rigidBody  .  velocity   =   new   Vector2  (  0f  ,   7f  );   }   else   if  (  Input  .  GetKey  (  down  ))   {   rigidBody  .  velocity   =   new   Vector2  (  0f  ,   -  7f  );   }   else   {   rigidBody  .  velocity   =   new   Vector2  (  0f  ,   0f  );   }  
  4. 4 新しく作成されたDirection()関数内に次のように入力します。
          public   void   Direction  ()   {   }  
    • これは、関数Random.Rangeが0または1のいずれかの乱数を生成することによって実行することです。次に、ボールに(5、-3)または(-5、3)のいずれかの速度を与えます。
  5. 5 追加
       int   direction  ;   direction   =   Random  .  Range  (  0  ,   2  );   if  (  direction   ==   0  )   {   rigidBody  .  velocity   =   new   Vector2  (  5f  ,   -  3f  );   }   else   {   rigidBody  .  velocity   =   new   Vector2  (-  5f  ,   3f  );   }  
    ボールの「Start()」関数に。
    これにより、ゲームの開始時にトリガーされます。
  6. 6 押す Ctrl + S スクリプトを保存します。 UnityEditorに戻ります。
  7. 7 BallスクリプトをBallゲームオブジェクトに適用します。 階層内のボールを選択し、アセットフォルダーからインスペクターのボールにボールスクリプトをドラッグします。広告

9 10の: 目標の作成

  1. 1 右クリック、 作成する >> 空の 、作成したオブジェクトにBox Collider2Dを適用します。 パドルの少し後ろに設置し、両側の上部の壁から下部の壁までカバーしていることを確認します
  2. 2 「BoxCollider2D」の下の「IsTrigger」ボックスをチェックします。 これにより、オブジェクトがそのトリガーに入ったときに何かが発生する可能性があります。この場合、ボールは中央にリセットされます。広告

10 10の: 目標コードの作成

  1. 1 アセットフォルダを右クリックして、 作成する >> C#スクリプト スクリプトの名前を「目標」に変更します。新しく作成したスクリプトをダブルクリックして開きます。 。
  2. 2 Start()関数の下に次のように入力します。
       void   OnTriggerEnter2D  (  Collider2D   collider  )   {   collider  .  GetComponent  <  Ball  >().  Direction  ();   collider  .  transform  .  position   =   new   Vector2  (  0f  ,   0f  );   }  
    • 'collider.transform.position = new Vector2(0f、0f);'ボールが初期位置に戻る方法です。この場合のコライダーはボールです。
    • 'collider.GetComponent()。Direction();'ボールが通過するときにボールの方向関数を取得し、ボールが再び実行されることを確認します。
    • したがって、基本的にボールは中心に戻り、もう一度ランダムな方向を選択します。
  3. 3 押す Ctrl + S スクリプトを保存します。 次に、UnityEditorに戻ります。
  4. 4 インスペクターで「コンポーネントの追加」を使用して、両方の目標にスクリプトを添付します。
  5. 5 Playを押して、完成したプロジェクトを確認します。
  6. 6 に移動 ファイル >> セーブ あなたがあなたのプロジェクトを永遠に保つことができるようにプロジェクト。 広告

コミュニティQ&A

探す 新しい質問を追加 質問をする残り200文字この質問に答えたときにメッセージを受け取るには、メールアドレスを含めてください。 参加する
広告

チップ

ヒントを送信するすべてのヒントの送信は、公開される前に慎重に確認されます。レビューのためにヒントを送信していただきありがとうございます。

人気の問題

ローランドギャロスが日曜日に閉幕するので、トップスターの多くは今週ノベンティオープンのためにハレに向かいます。

垂直レッグクランチは、腹筋とコアをターゲットにするための素晴らしいエクササイズです。彼らは基本的にあなたの足が高くなっていることを除いて標準的なクランチのより高度なバージョンであり、それは動きを少し難しくします。故障しました...



フォークボールを投げる方法。フォークボールは、スプリットフィンガーファストボールのはるかに厄介で遅いバージョンです。うまくいくと、ボールは遅くに下向きに槍を打ち、バッターを薄い空気でスイングさせたままにします。それは主に支持されなくなっています...

スローン・スティーブンスは今シーズンの2回目の試合での勝利を目指しており、キャロリン・ガルシアは5回目の勝利を目指しています。ツアーが再開されてから、ガルシアは彼女の最初の試合をします。

セクシーな髪を取得する方法。サロンに足を踏み入れることなく、当たり障りのない髪をセクシーなたてがみに変えましょう。髪の房をスタイリングする前に、髪を完全にクレンジングしてください。足を引きずるロックにボリュームを追加するために、爆弾を吹き飛ばしてください。ために...



スエードの靴から染料を取り除く方法。スエードの靴はとてもかっこいいです。残念ながら、それらは簡単に汚れます。スエードの靴から染料などの汚れを取り除くのは難しい場合があります。染みを悪化させるリスクがあるだけでなく、損傷する可能性があります...