Unityの隠された機能を探る

[【完走目指す】初心者が25日で強くなる Advent Calendar 2022](https://qiita.com/advent-calendar/2022/aruhitoganbaru)
６日目です。３つ取り上げました。自分、英語は苦手でした。
## Unityの紹介
普段unityを使わない人のために軽く説明します。　
 ![スクリーンショット (72).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/97a45555-c41f-2550-857e-ffda0531ceb6.png)

アプリとか作れるやつです。　
視覚的に操作方法がわかるので便利です。　
以下にUnityのページを載せておきます。　
[Unityのページ](https://unity.com/ja)

## よく使う部分をみる　
いつもよく触る部分を確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/2e4c6665-cdd0-54a8-350b-bd9594d23be4.png)



|画面|説明|
|---|---|
|Hierarchy|今あるオブジェクトを確認できます。|
|Scene    |ゲームスキンがいじれます。<br>オブジェクトとか、マウスで自由に動かしたり、大きさを変えれます。|
|Game     |作ったものの画面が見れます。|
|Inspector|選択したオブジェクトを詳しくいじれます。|
|Project  |いろいろ入っています。|
|Console  |エラーが出ると、ここに内容が表示されます。<br>Debug.Logを使って出るログは、ここに表示されます。|

画像2 build画面　
buildはこんな画面です。あまり使わないボタンとかあるので、この後少し紹介します。

# 隠された機能
人目につかないところにおいてあるけど、実は使い勝手のいい機能もあるかもしれません。
とりあえず探して、出てきた機能を探ります。
紹介したものの中には、使ってる人もいるかもしれないです。
使用環境:Unity 2021.3.13f1
言語を日本語にしておきました。
## 1.UI Builder
一番最初に見つけました。
  左上 window > UI Toolkit > UI Builder
にあります。


#### 何に使うのか

>UI Builder lets you visually create and edit UI assets (UXML and USS) for use with the UI Toolkit (formally UIElements).


https://docs.unity3d.com/ja/2019.4/Manual/com.unity.ui.builder.html


>UI Builder を使用すると、UI ツールキット (以前は UIElements) で使用する UI アセット (UXML および USS) を視覚的に作成および編集できます。

翻訳しました。
UXMLとかUSSとかよくわからないので、試しに使ってみます。
![スクリーンショット_20221203_180309.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/4eb4c89f-a59f-071c-da9f-192c94f49967.png)
左上、＋を押します。
![スクリーンショット_20221203_180431.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/793940a3-9866-06e5-de96-a83b036dc5e0.png)
今回は、新しく作るのでCreate New USSを選びます。
![スクリーンショット_20221203_181151.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/5152bcf2-d95e-e7cc-ac15-38a08c587602.png)
USSファイルができました。USSって何？

https://docs.unity3d.com/ja/2018.4/Manual/UIE-USS.html

USSについて書かれていました。UIElementsで使えるもののようです。
>USS はアセットとして認識されるテキストファイルです。テキストファイルには .uss 拡張子が必要です。

USSの定義にこう書かれていました。ほんと何も知らなくて申し訳ないのですが、アセットって何ですか？
↓調べました。
>Unity のアセットは、ゲームやプロジェクトで使用できるアイテムです。アセットは、3D モデル、オーディオファイル、画像、あるいは Unity がサポートする他の種類のファイルなど、Unity の外部で作成されたファイルから得られる場合があります。

https://unity3d.com/jp/quick-guide-to-unity-asset-store#:~:text=Unity%20%E3%81%AE%E3%82%A2%E3%82%BB%E3%83%83%E3%83%88%E3%81%AF%E3%80%81%E3%82%B2%E3%83%BC%E3%83%A0,%E5%BE%97%E3%82%89%E3%82%8C%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82

なるほど。
### 結局
UI Builderを使うと、UIツールキットというものに使えるUIのアイテム（例えばオブジェクトとか）を作成、編集できるってことでしょうか。
## 新たな疑問
UI ツールキット、UIElementsとは何でしょうか。
>UI ツールキットは、ユーザーインターフェースとエディターの拡張機能を開発するための機能、リソース、ツールのコレクションです。2021 LTS では、ゲームとアプリケーションのランタイム UI の作成とデバッグをサポートし、アーティストとデザイナーがより迅速に始めるのに役立つ直感的なワークフローを備えています。

https://unity.com/ja/features/ui-toolkit#:~:text=UI%20%E3%83%84%E3%83%BC%E3%83%AB%E3%82%AD%E3%83%83%E3%83%88%E3%81%AF%E3%80%81%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC,%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%E3%82%92%E5%82%99%E3%81%88%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

カタカナが多いです。無知で申し訳ないが、ユーザーインターフェースがわかりません
>UIとは、ユーザーインターフェイス（User Interface）の略称で、一般的にユーザー（利用者）と製品やサービスとのインターフェース（接点）すべてのことを意味します。

>WebサイトでいうところのUIは、サイトの見た目や、使いやすさのことを指します。よくUI＝見た目、と勘違いをしている方もいるかと思いますが、レイアウトや使用されている画像はもちろん、文字のフォント、メニューやボタンの操作性などユーザーが目にするもの・操作するものすべてが含まれています

引用:

https://www.m-hand.co.jp/design/7161/

これで、ようやくわからない部分がなくなりました。
USSの使い方ですが、時間がないので今度ちゃんと勉強します。
次に行きます

## 2　プロファイラー
![スクリーンショット_20221204_103718.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/4e568189-1418-8a96-306f-d4afa22388d4.png)
Window > 分析 > Profiler

![スクリーンショット_20221204_103547.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/349f1b43-19d1-efcd-c3d4-02653c7f24bc.png)
なにこれ。
ぱっと見では全く使い方がわからなかったので、調べます。
>Unity Profiler (プロファイラー) は、アプリケーションのパフォーマンス情報を取得するためのツールです。ネットワーク上のデバイスやマシンに接続されたデバイスに接続して、目的のリリースプラットフォームでアプリケーションがどのように動作するかをテストでき ます。また、エディターで実行して、 アプリケーション開発中にリソース割り当ての概要を確認することもできます。

引用:

https://docs.unity3d.com/ja/2021.2/Manual/Profiler.html

なんか
![スクリーンショット_20221204_104148.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/f79d932b-39ad-2f6e-b151-744e7cf41988.png)
再生ボタンを押したらアプリのパフォーマンス教えてくれるらしい。
重いアプリとかが一目でわかるみたいです。
#### 使ってみる
とりあえず作ったゲームで試します。
（プロファイラーの部分だけ見せます。）
![スクリーンショット_20221204_112135.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/19fcc6a9-d5b8-854b-107f-bffee15c94db.png)
グラフで表示されました。ところどころ大きな波が来たので、私の作ったものは結構重いのかもしれません。
![スクリーンショット_20221204_112459.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/d1522e1c-4f1b-b05b-a179-ada12be0dbd9.png)
グラフは一つだけではないようです。下にスクロールすると見れます。

次に行きます
## 3.デバイスシミュレーター
Window > General > Device Simulator
にあります。
![スクリーンショット_20221204_122051.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/22183b62-ed4e-64a0-f59b-697bcccbbe87.png)

その名の通り、シミュレータです。デバイスがいろいろ選べます。
#### 気づいてしまった
![スクリーンショット (72).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/ce28b274-9e97-7585-5b88-7cccd5452bd1.png)

![スクリーンショット_20221204_122402.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/2d492471-cc77-cd57-f5b5-41e1be8e5f95.png)
![スクリーンショット_20221204_123001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2961125/b8eb58f3-de21-362a-c54f-254c7f455955.png)
###### 見えるところにあるじゃん
gameを押すと選べるらしい。
全然気づかなかった。
この記事を書いてるときに気づいた。

## その他
・Test Runner
・Graphics Tier
調べればもっとあると思います。
# まとめと感想
別に隠されているわけではないのかもしれない。隠された機能なんてなかった。
知らないことは、調べたらちゃんと出る。便利。
引用と参考だらけ。学べたならOK。

# なぜここにあるのか
しらん