Unity初心者が詰まったUnity操作

## はじめに

筆者はプログラミング歴1年半ほどで普段Web開発をメインに行なっています。
この度ハッカソンでゲーム開発をすることになり、Unityを初めて利用しました。
Unityでの開発は初めてで戸惑ったことも多かったので始めてUnityを触る人の役に立ちたいと思い、記事にしました。

:::note info
私がUnityを始めて3ヶ月程しか経過していないので間違っていることがあればぜひ教えてください！
:::

## Unityとは

まず第一にUnityとは何かについて軽く触れておきます。
(まあ、この記事を見てる人はほとんどが知っていると思いますが…)

[Unity](https://unity.com/ja)とはUnity Technologies社が開発・販売しているゲームエンジンで、これを利用することでゲーム等(XR, アニメーションなども！)を制作することができます。
言語はC#、JavaScript、[Boo](https://github.com/boo-lang)(知らなかった…)で現在はほぼC#らしいです。
Unityで制作されたアプリとしてポケモンGO、スーパーマリオラン、原神等があり、モバイルアプリの開発に強いみたいです。他のメジャーなゲームエンジンとしてUnreal Engineがありますが、今回制作したアプリはモバイルアプリでグラフィックもそこまで必要なかったためUnityを選択しました。

 Unityそのものについては解説している方が多いと思うのでここまでにしておきます。

## 本題
さて前置きはこのくらいにして私が詰まったUnity操作について話していきたいと思います。
(操作といっても操作ではないこともありますが…)

### ゲームオブジェクトどっか行った！
せっかくゲームオブジェクトを配置したのにカメラ操作したり、他のゲームオブジェクトをいじっていたせいで以前に配置したゲームオブジェクトを見失ってしまう。

そんな時Hierarchy上でゲームオブジェクトをダブルクリックするとそのオブジェクトの位置にジャンプすることができます。ちなみに、ゲームビューを開いていると反映されないのでシーンビューを開いてからクリックしましょう。私も何度もこのミスしました…

### プレハブだけどこのシーンではちょっと変更したい！

大枠は同じだけど少し違う。そんな時にプレハブになっていると邪魔なのでプレハブ化を解除したい。そんな時はゲームオブジェクトを右クリックし「Prefab」>「Unpack」を選択することでプレハブを解除することができます。

プレハブについて詳しくは[こちら](https://docs.unity3d.com/ja/2021.3/Manual/CreatingPrefabs.html)をご覧ください

![unpack.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/ecb7160a-6487-144e-1fca-38ee9fb9d875.png)


### インスペクターで設定できない！

```csharp
private GameObject testObject;
```

と書いたけどインスペクターで設定できない…

それもそのはずpublicもしくは[SerializeField]にしないと設定できないのだから

```csharp
[SerializeField] GameObject testObject;
public GameObject testObject;

// のどちらかで記載しましょう
```

### うまくUIが表示されない！

Unityは下にある要素ほど後に描画されるので前に表示させたいものを下に持ってくる必要があります。

### ゲームビュー、シーンビューを消してしまった！

「Window」タグ > 「General」 > 表示させたいビュー・ウィンドウを選択することで再表示させることができます

![displayView.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/eeb58869-f982-1830-d0ad-b092c0ce60ba.png)


### 今まで利用していたものが急に使えなくなった！

私はこのパターンが「共用WiFiを利用していた」「Unityにログインできていなかった」の２種類ありました。

Photonは共用WiFiだと動かないみたいですね…(まあ共用WiFiを使うなって話ですけど)

ログインできているかは右上あたりにあるAccountをクリックすると確認することができます。

![isLogin.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/b69eabd7-5fab-95bc-ad64-527ea01fe875.png)


### Buildできない！

原因はさまざまあると思いますが、Buildできない時は一度Unityの再起動してみることをお勧めします。

### 音声が聞こえない！

これまでBGMや効果音を入れたはずなのに聞こえない。これまで聞こえていたのに聞こえなくなった。

もしかしたらこのMute Audioのところが選択されているかもしれません。

![UnMute.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/e654ec10-991d-c435-1024-6087f4ca76bd.png)


### レスポンシブ対応したい

Device Simulatorを利用して調整するのが良いと思います。Device Simulatorを利用するとPC上で多様なデバイスのサイズを確認することができるのでいちいち画面サイズを調整したりビルドしなくても簡単に確認することができます。

[このサイト](https://www.hanachiru-blog.com/entry/2021/04/19/120000)がわかりやすかったので興味ある方は是非インポートしてみてください

入れるとこんな感じでデバイスを選択することができます

![Device Simulator.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/2b5d718c-4b8f-b6e6-27db-4a16805afe8b.png)


### ios, Android等他のデバイス用にビルドできない

Unity HubでInstallsを選択し、歯車マークを押す。その中でAdd Module > 必要なモジュールをインストールすることでビルドできるようになります。

![AddModules.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/d40ce68b-a633-260d-9899-0e7d07dd3d14.png)
![AddMOdule2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1087368/987e05c2-4dc8-d833-770c-6be6b28f0ced.png)


## おわりに
私がUnityを触っていて詰まったことを列記していきました。
この記事が少しでもみなさんの参考になれば幸いです。
ここまで読んでいただきありがとうございました。

また触っていて詰まったことがあれば追加していきます！

## 参考資料
https://unity.com/ja

https://github.com/boo-lang

https://zenn.dev/omorichan/articles/36fe8130f05fc5

https://docs.unity3d.com/ja/2021.3/Manual/CreatingPrefabs.html

https://www.hanachiru-blog.com/entry/2021/04/19/120000