トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

SkyboxとSphereで360度映像を流す方法【Unity2020.3】

以前のが古いので書いた

bibinbaleo.hatenablog.com

bibinbaleo.hatenablog.com

Skybox

Render Texture作成

まずRenderTextureを作ります

f:id:bibinbaleo:20211210121857p:plain

Sizeを表示したい解像度にします。360度動画なので2:1。あとDepth BufferをNo Depth bufferにする

f:id:bibinbaleo:20211210122103p:plain

VideoPlayer

流したい動画をヒエラルキーにドラッグ。VideoPlayerが自動でつく。

f:id:bibinbaleo:20211210122217p:plain

VideoPlayerのRenderModeをRender Textureにして、さっき作ったRenderTextureをセット

ついでにLoopにチェックを入れると動画がループする

Skybox用マテリアル

次に新規マテリアルを作成。ShaderをSkybox>Panoramamicにする

f:id:bibinbaleo:20211210122437p:plain

そしてSphericalに最初に作ったRender Textureを設定

f:id:bibinbaleo:20211210122422p:plain

Skybox設定

Window>Rendere>LightningでSkybox設定のウィンドウを出す

f:id:bibinbaleo:20211210122638p:plain

EnviromentタブのSkybox Materialを上で作ったマテリアルにする。

f:id:bibinbaleo:20211210121859p:plain

完成

これでシーンを実行したら流れる!

f:id:bibinbaleo:20211210123853p:plain

Sphereに流す

RenderTexture作成~VideoPlayer設定

Skyboxの時と同じ

シェーダー用意

シェーダーを何にするかはいろいろあるけど、今回はこちらを使う

qiita.com

自分でCreate>Shader>何でもいいを作って、↑の記事の中のコードをコピペ

f:id:bibinbaleo:20211210132650p:plain

 

他のシェーダーについてはここでいろいろ試した

bibinbaleo.hatenablog.com

マテリアル作成

新しいマテリアルを作ってさっきのシェーダーを選ぶUnlit>TextureCullFrontMirror

f:id:bibinbaleo:20211210124530p:plain

そして作成したRenderTextureをセットする

f:id:bibinbaleo:20211210124653p:plain

Sphere

Sphereを作って、さっきのマテリアルをセットする

f:id:bibinbaleo:20211210124524p:plain

Sphereを大きくしてカメラを真ん中に置くなどする

f:id:bibinbaleo:20211210124957p:plain

完成

f:id:bibinbaleo:20211210125011p:plain