0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

ShoostへUnityのカメラ映像を送信する方法は下記に記載されているのですが、Unityの操作で不明な箇所があったため、まとめます。

使用ツール・素材

問題

  • KlakSpout(Spout)をUnityにインストールする方法がわからない
  • ShoostへUnityのカメラ映像を送信する方法がわからない

解決方法

KlakSpoutのインストール方法

Project Settingsで適切な値を設定した後、Package ManagerにてKlakSpoutをインストールできる。

Project Settingsの設定

  • Edit > Project Settings を開く
  • Package Manager > Scoped Registriesを選択
  • Name,URL,Scope(s)を設定。設定値は下記
    • Keijiro
    • https://registry.npmjs.com
    • jp.keijiro
  • Saveを押下
  • Project Settingsを閉じる

Project Settings > Package Manager > Scoped RegistriesにてName,URL,Scope(s)を設定した際の画面キャプチャ

Package Managerの設定

  • Window > Package Manager を開く
  • Packages: My Registries を選択
  • Package Managerウィンドウの右上にある、検索ボックスで「KlakSpout」を検索
  • Keijiro Takahashi > KlakSpout を選択
  • 検索ボックス直下のInstallボタン を押下
  • InstallボタンがRemoveボタンに変わったことを確認し、Package Managerを閉じる

Package ManagerにてKlakSpoutをInstallした際の画面キャプチャ

ShoostへUnityのカメラ映像を送信する方法

Unityで下記を作成することでShoostへカメラ映像を送信できる。

  • Render Texture
  • Camera
  • Spout SenderをAdd ComponentしたGameObject

本記事では、3Dキャラクターと3D背景を別々にShoostへ送信するため、Render Texture,Camera,GameObjectを2つずつ作成する。

Render Textureの作成

  • Assets上で右クリック > Create > Render Texture を選択するとRender Textureが作成される
  • Sizeの値は1920×1080を設定

キャラクター用のRender TextureのInspectorの画面キャプチャ
3D背景用のRender TextureのInspectorの画面キャプチャ

Cameraの作成

  • Hierarchy上で右クリック > Camera を選択するとCameraが作成される
  • (3Dキャラクター用のCameraのみ)ClearFlagsはSolid Colorに変更し、BackgroundでR,G,B,Aすべて0を設定
  • Target Textureは3Dキャラクター用、3D背景用のRender Textureを設定
  • Culling Maskで3Dキャラクターのみ映す設定、3Dキャラクター以外を映すよう設定

3Dキャラクター用のCameraのInspectorの画面キャプチャ

3D背景用のCameraのInspectorの画面キャプチャ

Culling Maskに3Dキャラクターのみを映す設定値(Character)がない場合

下記操作を行うことでCulling Maskで3Dキャラクターのみ映す設定が行える

  • Edit > Project Settings を開く
  • Tags and Layers > Layersを選択
  • 任意のUser LayerへCharacterを設定する

Project Settings > Tags and Layers > LayersにてCharacterを設定した画面キャプチャ

  • 3DキャラクターのInspectorのLayerからCharacterを選択する

3DキャラクターのInspectorのLayerからCharacterを選択した際の画面キャプチャ

Spout SenderをAdd ComponentしたGameObjectの作成

  • Hierarchy上で右クリック > Create Empty を選択するとGameObjectが作成される
  • Add ComponentでSpout Senderを追加
  • Spout NameはShoostで表示される値のため3Dキャラクター用、3D背景用で見分けられる値を設定する
  • Capture MethodはTextureを設定
  • Source Textureは3Dキャラクター用、3D背景用のRender Textureを設定

3Dキャラクター用のゲームオブジェクトにSpout Senderを設定した際の画面キャプチャ

3D背景用のゲームオブジェクトにSpout Senderを設定した際の画面キャプチャ

Shoostの設定

  • Settingsタブ > Spout Settings > Spout Capture をFalseからTrueへ変更
  • Leyerタブ > LeyerセクションでSpout Capture を選択すると、Unityで設定したSpout Senderが選択できる

Leyerタブ > LeyerセクションでSpout Capture を選択した際の画面キャプチャ

おわりに

Shoostの画面とUnity画面の比較
Shoostを使って出力した映像(Gif画像)
今までは別アプリで3Dキャラクターの静止画を作成しShoostに読み込ませていたのですが、Unity経由で3Dキャラクターや3D背景の映像を送れるようになったことでポーズや表情を気軽に変更できるようになりました。

とても便利なので、ぜひ使ってみてください。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?