【3DアバターをUnityで】Ready Player MeのアバターをUnity上に取り込む

Craneです。

Unityをいじっているうちに、3Dアバターに興味が沸き、アバターが歌ってみた的な動画をYoutubeにアップしてみました。見てみて下さい!

アバターは、Ready Player Meというサービスで作りました。
その上で、顔だけ改変してます。CGもUnity上で作っているため、Unity上でアバターを動かしたい、ということで、自分の備忘も兼ねて方法を記載します。

今回は、Unity上にReady Player Meのアバターを取り込む方法を解説します。Ready Player Meで作ったアバターに関するライセンスなどについても記載しています。

“【3DアバターをUnityで】Ready Player MeのアバターをUnity上に取り込む” の続きを読む

バーチャル美術館 Unityにおける360℃画像・Cubemapの活用(Unity上での360℃画像表示)

今回は、Unity上での360℃画像表示について記載します。
私が実際に活用しているやり方を幾つかご紹介します。
今回記載する方法を活用して私が作ったインターネットミュージアムについても、よろしければご覧ください。

オンライン美術館 Crane Art Museum

“バーチャル美術館 Unityにおける360℃画像・Cubemapの活用(Unity上での360℃画像表示)” の続きを読む

バーチャル美術館 Unityにおける360℃画像・Cubemapの活用(概要)

3か月も間が空いてしまいました。

今回からは、私が作成したオンラインバーチャル美術館で活用している、360℃画像によるUnity上でのCubemapの使い方について説明しようと思います。

今回は、まず概要です。

↓ オンラインバーチャル美術館 よろしければ見てみてください。

オンラインバーチャル美術館 Crane Art Museum

Unity上での3D表現において、360℃画像は何の役に立つのか?

一言でいえば、「処理が軽くて済む」ということです。

以下のGif動画をご覧ください。

これが、元々私が作っていたアートミュージアムです。
リアルな表現を追求し始めたこともあり、重い作りになっていることもありますが、統計を取ってみると、私の使用しているGPU搭載PCでも31FPS程度しか出ていません。
Batches, SetPass calls というのが処理の負荷の目安ですが、数千という値になっており、これは通常のPCではとても処理が追い付かないレベルです。
(実際には、チューニングしていけば多少は減ると思いますが)

次に、以下をご覧ください。

これは、元々作っていたアートミュージアムの3D空間上で、360℃のスクリーンショットを撮り、その360℃画像をCubeに貼り付けて、描画しているものです。
画像を貼り付けたCubeを一つ描写しているだけなので、リアルタイムに3D空間のオブジェクト一つ一つを描画するのと比べ、処理は軽くなります。

365FPSと性能も圧倒的に改善しており、Batches, SetPass callsなどの値も激減しています。これであればWebGLでも耐えられますし、普通のPCでもカクカクせず再生可能です。

360℃画像活用のざっくりしたワークフロー

1)赤丸の地点の360℃スクリーンショットをUnity上で撮る

2)360℃スクリーンショットをpngやjpgで保存

3)Skybox/Cubemapのマテリアルを作成して、Cubeに配置
 →Cubeの中心にカメラを持ってきて、回転できるようにすれば、元々スクリーンショットを撮った位置からの360℃ビューが見れる

 

デメリット

あくまで、360℃画像は、とある地点から撮った360℃画像でしかありません。
下の動画のように、スクリーンショットを撮った位置からカメラがずれると、空間が歪みます。

つまり、空間を歪ませたくないなら、360℃ビューを用意したい地点の数だけ、360℃画像が必要になります。動き回るのがメインのコンテンツには向かないということです。

今回は概要を説明しました。次回からはもう少し詳細に説明していきます。

 

 

Unity Cinemachine Free Look Cameraを使ってオブジェクトの360℃ビューを作成する(1)

2カ月も間が空いてしまいました。

今回は、Cinemachine Free Look Cameraを使って、フォトグラメトリで作った3Dアートを360℃鑑賞できるようなビューを作ってみます。

上の画面ですと、アートの方が回転しているように見えますが、
実際は下のように、Free Look Cameraがアートの周りを回転しています。

“Unity Cinemachine Free Look Cameraを使ってオブジェクトの360℃ビューを作成する(1)” の続きを読む

Unity Cinemachine のCamera OffsetとCinemachine Follow Zoomで対象がカメラに映る位置を調整する

今回はUnity Cinemachine のCamera OffsetとCinemachine Follow Zoomを使って、対象がカメラに映る位置を調整する方法について記載します。
(無知な私はCinemachineCameraOffsetの存在を今日知りました・・・はずかしい。そしてこれ便利)

“Unity Cinemachine のCamera OffsetとCinemachine Follow Zoomで対象がカメラに映る位置を調整する” の続きを読む

Unity Cinemachine のTransposer、ComposerのOffsetをスクリプトで制御する

前回の記事で省略した、
Unity Cinemachine  VirtualカメラのTransposer、ComposerのOffsetの値をスクリプトで変更する方法を記載します。

前回の記事はこちら。
Unity CinemachineのBlendを使ってアートをクリックしたらそこにフォーカスして拡大するようにする – Craneのブログ (crane-art.com)

“Unity Cinemachine のTransposer、ComposerのOffsetをスクリプトで制御する” の続きを読む

Unity Cinemachine Virtualカメラのズームをマウスホイールでコントロールする

今回は、Unity CinemachineのVirtual Cameraでズームをマウスホイールでコントロールする方法について記載します。
本来、CinemachineはTimelineを活用するなどして、Scriptを組まずとも映画のようなカメラワークが可能、というのが売りのようなのですが、
Timelineが使いこなせていない私はScriptを活用して色々作ってしまいました。恐らく無駄なことを多くしていると思います。

さて、前回、以下の記事でCinemachineのカメラのAimにPOVを設定して、回転をマウス右クリック時に行うようにするところまで記載しました。

Unity Cinemachine  POVカメラで右マウスボタン押下時のみカメラを回転させる – Craneのブログ (crane-art.com)

今回はそれに加え、マウスホイールでズームイン・アウトをできるようにします。
Scriptを作成してみました。
なお、滑らかにズームイン・アウトを行わせるためにDOTweenを使っています。

“Unity Cinemachine Virtualカメラのズームをマウスホイールでコントロールする” の続きを読む

Unity Cinemachine  POVカメラで右マウスボタン押下時のみカメラを回転させる

Unityでのカメラワークを実装するのにあたって、Cinemachineを導入しました。
が、Cinemachineについては参考にできるサイトも少なくなかなか苦労しました。

今回は、CinemachineでPOV利用時に、右マウスボタン押下時のみカメラを回転させる方法について記載します。

※この記事はUnity2019以降を前提に記載しています。

“Unity Cinemachine  POVカメラで右マウスボタン押下時のみカメラを回転させる” の続きを読む