# Portalgraphアプリ作成チュートリアル

### 必要なもの

* Webカメラ付きでUnityが動くPC
* Portalgraphランタイムのインストール <https://portalgraph.booth.pm/items/6256749>
* Unity 2019.4以上
* 赤青3Dメガネ\
  &#x20;[https://www.stereoeye.jp/shop/index.html](http://toy-box.shop-pro.jp/?pid=4563970) (推奨)\
  &#x20;<https://amzn.asia/d/438qF7P>

## アセット使用手順

### プロジェクトの作成

まだ作成してない場合は、Unity Hubから新規プロジェクトを作成します。テンプレートは3D(Built-in Render Pipeline)を選択してください（URP、HDRPも使用可能）。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FOmtoWFVvmo2kZ29praTw%2Fimage.png?alt=media&#x26;token=17a9afc3-8f5e-48ee-8db6-56ff68bf20b1" alt=""><figcaption></figcaption></figure>

### アセットのインポート

### Portalgraphアセットのインポート

メニューのAssets→Import Packages→Cusom Packageからportalgraph.unitypackageを選択して、プロジェクトにアセットをインポートする。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FNeXJ6yOqApSfeHBvjjFU%2Fimage.png?alt=media&#x26;token=19d17c93-b127-465c-a430-c029805e2220" alt=""><figcaption></figcaption></figure>

#### TextMesh Pro設定

TextMesh ProのEssential Resourcesをインポートする。メニューのWindow→TextMeshPro→Import TMP Essential Resourcesをクリックしてインポートする。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FQHRDFS12JaTfbAsxsAiL%2Fimage.png?alt=media&#x26;token=0e395553-57e5-4605-aaaf-e5e20f58866d" alt=""><figcaption></figcaption></figure>

### シーンの作成

Unity上でシーンを作成し、座標(0,0,0)にProject内のPortalgraph/Portalgraphプレハブを配置します。Portalgraph/ScreenCenterの座標が、表示画面の中心点になります。\
また、座標(0,0,0)に**サイズが(0.1, 0.1, 0.1)のCube（あなたのPCのモニターより小さいサイズ）**&#x3092;配置します。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FRWEAYS9hxGGXt6ogNVPg%2Fimage.png?alt=media&#x26;token=414c03a7-9ac3-4d8b-a361-e477327a5dd1" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2ForUCBnZVIOEDolI9BaYM%2Fimage.png?alt=media&#x26;token=61e222cf-04b0-4162-a22b-2e4726451b43" alt=""><figcaption></figcaption></figure>

### ビルド

メニューのFile→Build Settingsをクリックします。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FHoxMsrxDaqWNral3NOW9%2Fimage.png?alt=media&#x26;token=3964eb1d-e029-44c0-8f6f-8c431c1f1ef4" alt=""><figcaption></figcaption></figure>

Add Open Scenesをクリックして現在のシーンをScenes in Build追加、Buildをクリックしてビルドします。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2Fxr0FihsfFjof2uojdnhu%2Fimage.png?alt=media&#x26;token=395ca73f-9066-45ca-88bc-900ee889d3eb" alt=""><figcaption><p>Add Open Scenesをクリックして現在のシーンをScenes in Build追加、Buildをクリック</p></figcaption></figure>

### 実行

Portalgraphアプリケーションの実行にはPortalgraphランタイムのインストールが必要です。\
ランタイムのインストール後に出力された実行ファイルを実行すると、自動でカメラトラッキングアプリが起動します。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FINya2B8TMmkXPCDTa545%2Fcamerapg.png?alt=media&#x26;token=4bb9c9a4-5b35-40a7-b4ab-39fbe601117a" alt=""><figcaption></figcaption></figure>

カメラドロップダウンから使用するWebカメラを選択し、「適用」をクリックすれば顔の座標を追跡します。\
キャリブレーションをクリックするとカウントダウンが始まるので、カメラ真正面50cmの場所に目が来るように待機すれば自動で数値が設定されます。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FCB72gJJtC3gZNAc2iyek%2Fimage.png?alt=media&#x26;token=a7dc372f-15db-45c6-be9f-4a4a797d044b" alt=""><figcaption></figcaption></figure>

作成したアプリの画面に戻ると、初めてPortalgraphを実行する場合は、自動で画面サイズの入力画面が表示されるので（初めてではない場合はF12を押して、「次へ」→「カメラ」をクリック）、入力してOKを押して、次の設定画面を閉じます。

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FQmB9qlUXWjCl3pwKFOSh%2Fimage.png?alt=media&#x26;token=ce3bcd3f-49e0-4b1a-86ef-4c3f69e0cb9a" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2416823498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaJCTlOkQcgkhVMLcuHBm%2Fuploads%2FJEkE2s6rQEgWjjxjeAV7%2Fimage.png?alt=media&#x26;token=b362367d-56e1-404b-af02-25b168153e6b" alt=""><figcaption></figcaption></figure>

以上で、様々な角度から3Dで見ることが出来るPortalgraphアプリケーションが出来ます。アナグリフ（赤青）3Dメガネを掛けて体験を楽しんでください。

操作は、\
\
WASDRF…前後左右上下移動（Shiftと同時押しで低速移動）\
QE TG ZC…左右、上下、傾き回転（Ctrlと同時押しで90度回転）\
12…スケール変更（Shiftと同時押しで低速化）\
3…スケールリセット

画面のサイズ、傾きに合わせてちょうどいいカメラ位置、角度、スケールに合わせてください。

#### うまく動かないときのチェックポイント

* カメラトラッキングアプリが動かない場合は、最新版のVC++ランタイムをインストールしてください。 <https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170>
* 何も表示されない場合\
  画面に配置したCubeのサイズは(0.1, 0.1, 0.1)になっていますか？Portalgraphは実際のサイズで表示するので、画面より大きい物体は表示できません。1キーを押すとスケールが縮小されるので、試してみてください。
