LoginSignup

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 1 year has passed since last update.

Unity基礎編 〜ボールを動かしてみよう〜

Last updated at Posted at 2020-05-16

はじめまして、フリーランスのますみです!
一人一人が自立・共存・革新している「クリエイターエコノミー」を創る。』というビジョンに向けて活動しています。
自己紹介.png

この記事では、Unityというゲーム開発エンジンを使って、キーボードでボールを動かしていきます

【このコースの全体像】
1. Unity入門編 〜インストールしてみよう〜
2. Unity基礎編 〜ボールを動かしてみよう〜
3. Unity発展編 〜星集めゲームを作ろう〜

コンテンツ

1. 地面とボールのオブジェクトを生成

プロジェクトの生成をした後は、以下のような画面になります。

sc26.png

まずは、以下のようにHierarchy > Create > 3D Object > Planeを選択して、地面のオブジェクトを生成しましょう。

sc27.png

以下のようにPlaneオブジェクトが生成されたことを確認できると思います。

sc28.png

次に、Hierarchy > Create > 3D Object > Sphereを選択して、ボールのオブジェクトを生成します。

sc29.png

以下のようにボールオブジェクトが生成されたら、成功です!

sc30_pre.png

2. 重力の追加

次に、重力を追加していきましょう!
重力が追加されたか確認するために、あらかじめボールオブジェクトを上に持ち上げておきます。
Sphere(ボールオブジェクト)を選択して、緑の上矢印をクリックしながら、上へ動かします。

sc30.png

上に持ち上がったら、実行ボタンをクリックしてみましょう。

sc31.png

すると、以下のように何も起きないことがわかると思います。

sc32.png

そのため、Sphereオブジェクトを選択して、Add Component > Rigidbodyコンポーネントを追加しましょう。

Component(コンポーネント)とは:Unityでは、各オブジェクトに要素を付加していきます。この要素をコンポーネントと言います。

Rigidbody(リジッドボディ)とは:重力などの物理演算に関わる要素。コンポーネントの一つ。

sc33.png

Rigidbodyが追加できたら、再び実行して、重力が追加されたかを確認します。

sc34.png

重力が無事追加されて、ボールが落ちるところが確認できたら、重力追加成功です!

3. move_by_arrowの追加

続いて、「矢印キーで球を動かせる」ようにmove_by_arrow.csというスクリプトを作成していきます。

Sphereオブジェクトを選択して、Add Component > New scriptを検索し、move_by_arrowという名前を入力して、Create and Addをクリックして、スクリプトコンポーネントを作成します。

sc36.png

以下のように、AssetsInspectorにそれぞれスクリプトが追加されていることが確認できると思います。
確認できたら、スクリプトをダブルクリップして、開きましょう。

sc37.png

すると、以下のようにスクリプト編集画面が表示されると思います。

sc39.png

以下のようにスクリプトを編集して、実行してみましょう。

move_by_arrow.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class move_by_arrow : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKey(KeyCode.RightArrow)) {
            transform.Translate(new Vector3(3f, 0, 0));
        }
    }
}

sc40.png

以下のようにBuild successfulと表示されたら、Unityを実行することができます。

sc41.png

Code EditorからUnityへ切り替え、実行してみましょう。

sc42.png

右矢印キーを押すと、とても早く移動したことがわかると思います。

そのため、コードを以下のように変えて、スピードを遅くしてみましょう。

move_by_arrow.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class move_by_arrow : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKey(KeyCode.RightArrow)) {
            transform.Translate(new Vector3(0.1f, 0, 0));
        }
    }
}

sc43.png

同様にして、右向き矢印キーだけではなく、他のキーも動かせるようにしましょう。

move_by_arrow.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class move_by_arrow : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKey(KeyCode.RightArrow)) {
            transform.Translate(new Vector3(0.1f, 0, 0));
        }
        if (Input.GetKey(KeyCode.LeftArrow))
        {
            transform.Translate(new Vector3(-0.1f, 0, 0));
        }
        if (Input.GetKey(KeyCode.UpArrow))
        {
            transform.Translate(new Vector3(0, 0, 0.1f));
        }
        if (Input.GetKey(KeyCode.DownArrow))
        {
            transform.Translate(new Vector3(0, 0, -0.1f));
        }
    }
}

sc44.png

Unityで実行して、矢印キーで動かせるか確認しましょう。

arrow.gif

次のコースでは、Unity発展編 〜星集めゲームを作ろう〜に取り組んでいきます。

【このコースの全体像】
1. Unity入門編 〜インストールしてみよう〜
2. Unity基礎編 〜ボールを動かしてみよう〜
3. Unity発展編 〜星集めゲームを作ろう〜

最後に

最後まで読んでくださり、ありがとうございました!
いかがだったでしょうか?

この記事を通して、少しでもあなたの学びに役立てば幸いです!

おまけ

エンジニアの仲間(データサイエンティストも含む)を増やしたいため、公式LINEを始めました🎉

一緒に仕事をしてくれる方」「友だちとして仲良くしてくれる方」は、友だち追加をしていただけますと嬉しいです!(仲良くなった人たちを集めて、「ボードゲーム会」や「ハッカソン」や「もくもく会」もやりたいなと考えています😆)

とはいえ、みなさんにもメリットがないと申し訳ないので、特典を用意しました!

友だち追加後に、アンケートに回答してくれた方へ「エンジニア図鑑(職種20選)」のPDFをお送りします◎

0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up