カイワレスタイル

ゲーム、アニメ、プログラム、興味のあることをツラツラと。

Thetaのストリーミング映像をリアルタイムにリフレクションさせてみた

本記事は Unity Advent Calendar 2018 の 18日目 の記事です。

qiita.com

はじめに

9/15のInfiniteRaveというイベントで、ThetaVを使って360度のストリーミング映像をSkyBoxにしたり、オブジェクトにリフレクションさせたりするVJシステムを作って使っていました。
当時はReflectionProbeを使って毎フレームSkyboxだけをターゲットにしてCubeMapを生成していたのですが、そのCubeMapのレンダリングがそこそこ重かったです。
60FPSは維持してましたが、他のオブジェクトなどの負荷も合わせると結構ギリギリなラインでした(そんなにつよつよPCではなかったせいもある)

www.youtube.com

上のアーカイブ動画の冒頭からスクリーンに映っている映像がソレです。
今回ReflectionProbeを使わずに、リアルタイムにリフレクションさせる仕組みを作ってみたのでそれの解説をします。
下が完成形の動画です。

youtu.be

続きを読む

「Unityを使ったVJでよく使うイメージエフェクト集」という内容でLTしてきた

f:id:kaiware007:20181109014825p:plain

11月9日、ドリコムで開催された「Unity Shader 勉強会」で「Unityを使ったVJでよく使うイメージエフェクト集」という内容でLTしてきました。

connpass.com

シェーダーに関する内容での発表を頼まれていたんですが、他の登壇者とかぶらないネタを考えてVJネタに落ち着きました。
通常のスライドと見せかけて、スライドにイメージエフェクトをかけて、見てる人をびっくりさせるためだけにUnityでスライドを作りました(背景色とかレイアウトもちょっとそれっぽくした)
uGUIを使ったスライド切り替えシステム自体はすぐ出来たんですが、作図が地味にめんどくさかったです。
VJネタはこういう技術系勉強会では珍しかったのか、Twitterでもなかなか好評だったと思います。
UnityエンジニアでもVJに興味を持つ人が増えるといいなと思います。

実際に見れるスライド

unityroomさんのほうで実際に動くスライドを公開しています。
音楽を聞きながら適当にイメージエフェクトをかけるとだんだん気持ちよくなるかもしれません。  

Unityを使ったVJでよく使うイメージエフェクト集スライド | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

スライドのソースコード

スライドのUnityプロジェクトもgithubの方で公開しています。
シェーダーのソースコードも入ってるので、詳しく見たい方はこちらを見てください。

github.com

VIVEトラッカーの接続でハマった話

前回、VIVE proのHMDのセッティングでハマった話を書いた。

今回は、VIVEトラッカーの接続で3点ハマった箇所があったので、メモしておく。
ちなみにSteamVRのバージョンは1533664367
自分は後述する手順で接続できたが、正しい手順なのかはちょっとわからない。
間違っていたら教えて欲しい。

続きを読む

VIVE Proのセッティングでハマった話

VIVE Proのセッティング時、リンクボックスとPCを接続してUSBとDisplayPortを検出させる行程があるが、いくらやっても検出されなくて心が折れかけた。
ふと、HMDとリンクボックスをつなぐケーブルの、HMD側の根本を触ってみたところ、グラグラしていたので挿し直したら、正常に各種ドライバのインストールが始まってUSBとDisplayPortの検出が成功した。

↓これ

f:id:kaiware007:20180814003824p:plain

端子がHMDのカバーの中に入り込んでるため、一見抜けてるかどうか見ただけじゃ判別つかなかった…。
同じトラップに引っかかる人がいないとも限らないので、メモとして残しておく。

UnityのフルHD映像をOBSで受信する方法

Unityの映像をOBSで録画したり配信したい

最近vtuber関連の技術開発が盛んですが、Unityの映像をOBSで受信する方法として、UnityCamを使う記事がよく出てきます。
UnityCamは、UnityのCameraでレンダリングした映像を仮想Webカメラとして他のアプリで使えるようにしてくれるプラグインです。

github.com

しかし、UnityCamでは出力解像度が最大1280x720までなので、フルHD(1920x1080)の動画を作成したい時に困ります。

調べた結果、似たようなものでUnity Captueというプラグインを使うとフルHDかつ60FPSで出力できる事がわかりました。

github.com

Unity Captueのインストール&使用方法

  1. 前述のUnityCaptureのリポジトリから、ZIPをダウンロードするか、リポジトリをクローンします。
  2. ダウンロードしたリポジトリの中のInstallフォルダの中の、Install.batを実行します。
    成功すると疑似Webカメラがインストールされます。
  3. ダウンロードしたリポジトリの中の、UnityCaptureSample/Assets/以下のUnityCaptureフォルダを、組み込みたいUnityプロジェクト内にコピーします。
  4. UnityのCameraオブジェクトに、UnityCaptureコンポーネントを追加します。
  5. OBS側で、「映像キャプチャデバイス」を追加し、デバイスから「Unity Video Capture」を選択します。
  6. Unity側で実行して映像がOBSに表示されたら成功です。

キャプチャしてみた映像


Unity(Unity Captue) to OBS Captue Test 1920x1080@60FPS

上の動画はフルHD@60FPSでキャプチャした映像です。
フルHD@60FPSだと、OBS側にフォーカスを合わせないと負荷でガクガクになってまともにキャプチャできませんでした。
使ってみた所感としては、フルHD@30FPSなら大丈夫そうです(当方の環境、i-7 2.6GHz、メモリ16GB、GTX1060)

UnityでRICOH THETA Vの4Kカメラを使う

RICOH THETA Vは2017年9月の発売当初、ドライバが未成熟でUnityで認識できず使うことが出来なかった。
それから約半年、いつの間にかUnityで使えるようにドライバがアップデートされていたので、試してみた。

情報元は下記のサイト。

lists.theta360.guide

動作確認

WebCamTexture.devicesの中から"RICOH TEHTA V 4K"か"RICOH TEHTA V FullHD"を選択して、WebCamTextureを生成している。
リストアップする時に、ただの"RICOH THETA V"というデバイスも現れるが、こちらを指定しても何も映らない。

下記は自作のサンプルプログラムの動画。
途中でカクつくのはキャプチャの負荷。
実際は遅延はあるがカクつくことはない。
絵がガタガタしてるのは、おそらくUnity標準のSphereにWebCamTextureを貼り付けているため、ポリゴンの歪み的なものだと思われるけどそのうち検証する。

 


RICOH THETA V 4K Live For Unity Test

 

画質の確認

FullHDと4Kの差は歴然。ただ、どちらも画面が割と白飛びしてしまっていて残念。

f:id:kaiware007:20180324024403p:plain

FullHDモードの画質

f:id:kaiware007:20180324024408p:plain

4Kモードの画質

サンプルプロジェクト

今回の動作検証のために作ったプロジェクト。
THETA Vが必須!

github.com

Windows10環境でRe:VIEWの執筆環境を構築する方法・改

以前、Windows10環境でRe:VIEWの執筆環境を構築する方法 という記事を書きましたが、Bash on Windowsを使っており、いささか面倒くさい方法でした。
しかも、ファイルシステムWindowsUbuntuで別物になっており、互いのファイルのやりとりが不便でした。

今回、直接RubyWindowsにインストールする方法でRe:VIEWの執筆環境を構築できたのでメモとして残しておきます。

Rubyのインストール

 RubyInstaller2を使います。

github.com

少し前までRubyInstallerとRubyInstaller2は別々に存在していたんですが、RubyInstallerの更新が停滞して、代わりにRubyInstaller2が正式なRunyInstallerに昇格したそうです。
ややこしいですね。
とりあえず最新版をDLしてインストールします。
Rubyのインストール後、MYSY2のインストール設定画面(DOS窓)が開いて、1~3までの選択肢がでるので、1~3まで順番に実行していきます。
RubyのインストールとMSYS2の設定については、下記のサイトに詳しく書いてあります。

qiita.com

 

Re:VIEWのインストール

Rubyをインストールすると、スタートメニューにStart command prompt with Rubyというアイコンが追加されるので、それを開きます。
そのコマンドプロンプト上で、

> gem install review

を実行するとRe:VIEWがインストールされます。

Texのインストール

下記のサイトからWindows用のTex Live 2017のZIPをDLします。

TeX/Install - 松浦高志のWikiページ
ZIPを解凍したフォルダの中のinstall-tl-windows.batを実行するとインストールされます。
インストールには結構な時間がかかります、気長に待ちましょう。

Windows環境では、TeXインストーラ 3 が有名ですが、2017年10月8日現在、Windows 10のCreatorsUpdate後の環境ではインストーラが起動せず、インストールできませんでした。

まとめ

前回のBoW環境とは違い、Windows環境で動作するRe:VIEWの執筆環境が構築できたおかげで、atomエディタを使えたり、ファイルのやり取りがGUIでできたりするので、執筆が捗りそうです。

告知

2017年10月22日(日)の技術書典3とは別に、2017年11月12日(日)のデジゲー博でも技術同人誌を出します。

あのタノシマスのアカとブルーのエンジニア「藤岡 裕吾」氏が執筆予定の、アカとブルーで実際に使ったUnityに関する技術の同人誌に、おまけで自分もちょっとした技術記事を書かせて頂けることになりました。
よろしくお願いします!

techbookfest.org

デジゲー博 | 同人&インディーゲームオンリー展示・即売会

 


アカとブルー 絶賛配信中!

tanoshimasu.com