SlideShare a Scribd company logo
1 of 23
Download to read offline
青木そらす(@sorasu2113)
自己紹介
 青木そらす(@sorasu2113)と申します
 VR / ARのアプリケーションを趣味で作ってます
 VR空間で究極の幸せを獲得したいと目論む人です
何がしたいか
何がしたいか
60FPSを維持した状態で
何がしたいか
60FPSを維持した状態で
制服Unityちゃんに
何がしたいか
60FPSを維持した状態で
制服Unityちゃんに
保健室で膝枕してもらいたい
検証環境
 Unity 5.0.2 f1
 Oculus Mobile SDK 0.5.1
 Galaxy S6 edge / ファーム最新(2015年5月30日現在)
前提条件①
 出すもの … 制服Unityちゃん、男性キャラ、保健室
 保健室はStaticにチェックを入れる
 固定視点で移動は無し
 ShadowはBake以外使わない
前提条件②
 Light Mapを作成する Lightingは極力Bake設定
 Light Probeを設置、Reflection ProbeはBoxとBake指定
 Static Batching、Dynamic Batching、GPU Skinning
Multi Thread Renderingは有効。
前提条件③
 Unity Gear VR Gameのパフォーマンスを搾り出せ(抜粋)
 フレーム当たりのドローコール数 : 50~100
 フレーム当たりのポリゴン : 5万~10万
 テクスチャはできるだけ少なめに(ただし大きくても可)
数字の出し方
 SetPassCall – UnityEditor上で確認
 FPS – 実機で計測した値
SetPassって何者?
 【Unity】Unity Performance Casual Talk
「ドローコール伝説の終わり」 レポート
 http://qiita.com/baba_s/items/5260807ced7fc3c02ca6
SetPassって何者?
 ざっくり言うと
 Unity→OpenGLドライバに命令を投げる回数
 オブジェクトを大量に出しても、共通マテリアルなら
 1Mesh * 1Material * 1PassのShader = SetPassCall 1
 Materialの個数やShaderのPassが多いと増える
 Shaderのプロパティを動的に変更すると、別物になるので
 インスタンス毎にSetPassが呼ばれる → 良くない
普通に出してみる
 SetPassCall – 90
 FPS – 50
そこそこのFPSが出てしまった…
もっと快適にできる
 マテリアルとメッシュが複数あるため、個々に描画している
 シェーダーの中でPassを複数呼んでいる
 ここを減らす
施策
 モデルデータをMeshBakerで結合する($50)
 シェーダーを可能な限りMobileに変える
出してみる
 SetPassCall – 16 ~30
 FPS – 60
出してみる
 SetPassCall – 16 ~ 30
 FPS – 60
どれだけ減ったのか
 背景 Set Pass Call - 72→ 2
 男性キャラ Set Pass Call – 8 → 4
 Unityちゃん Set Pass Call – 30 → 22
それでもSetPassCallが減らせなかった場合
 固定視点に限り背景をSkyBox化することで
 SetPassCallを6まで抑えられます。
 ※両眼で12 Set PasCallです
 ※今回、背景が2Passで描画出来てしまったので紹介だけです
まとめ
 オブジェクトは極力、MeshBakerを使って1つにまとめる。
 Materialが細かく分かれてしまった場合は
SkyBoxでごまかす。
 このコンテンツは、『ユニティちゃんライセンス』で提供されています。

More Related Content

Viewers also liked

Terrainの軽量化について
Terrainの軽量化についてTerrainの軽量化について
Terrainの軽量化についてHaruhisa Hasegawa
 
子どもがOculusダメな理由を調べてみた
子どもがOculusダメな理由を調べてみた子どもがOculusダメな理由を調べてみた
子どもがOculusダメな理由を調べてみたHiromichi Yamada
 
パノラマ動画VR再生のあれこれ
パノラマ動画VR再生のあれこれパノラマ動画VR再生のあれこれ
パノラマ動画VR再生のあれこれMakotoItoh
 
GearVR向けのゲームを作ってみた際にわかったこと
GearVR向けのゲームを作ってみた際にわかったことGearVR向けのゲームを作ってみた際にわかったこと
GearVR向けのゲームを作ってみた際にわかったことmao_
 
コンテンツと著作権の基礎の基礎
コンテンツと著作権の基礎の基礎コンテンツと著作権の基礎の基礎
コンテンツと著作権の基礎の基礎hiroko_tb
 
Hiyoshi Jumpの作り方
Hiyoshi Jumpの作り方Hiyoshi Jumpの作り方
Hiyoshi Jumpの作り方MakotoItoh
 
マシな画面を作る
マシな画面を作るマシな画面を作る
マシな画面を作るokumasama
 

Viewers also liked (8)

Terrainの軽量化について
Terrainの軽量化についてTerrainの軽量化について
Terrainの軽量化について
 
子どもがOculusダメな理由を調べてみた
子どもがOculusダメな理由を調べてみた子どもがOculusダメな理由を調べてみた
子どもがOculusダメな理由を調べてみた
 
パノラマ動画VR再生のあれこれ
パノラマ動画VR再生のあれこれパノラマ動画VR再生のあれこれ
パノラマ動画VR再生のあれこれ
 
GearVR向けのゲームを作ってみた際にわかったこと
GearVR向けのゲームを作ってみた際にわかったことGearVR向けのゲームを作ってみた際にわかったこと
GearVR向けのゲームを作ってみた際にわかったこと
 
20150530_モバイルVR最新動向_OculusRift勉強会#2
20150530_モバイルVR最新動向_OculusRift勉強会#220150530_モバイルVR最新動向_OculusRift勉強会#2
20150530_モバイルVR最新動向_OculusRift勉強会#2
 
コンテンツと著作権の基礎の基礎
コンテンツと著作権の基礎の基礎コンテンツと著作権の基礎の基礎
コンテンツと著作権の基礎の基礎
 
Hiyoshi Jumpの作り方
Hiyoshi Jumpの作り方Hiyoshi Jumpの作り方
Hiyoshi Jumpの作り方
 
マシな画面を作る
マシな画面を作るマシな画面を作る
マシな画面を作る
 

Similar to Gear vrの最適化方法を調べてみた

UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話Shohei Yamamoto
 
VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)
VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)
VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)sugiuralab
 
20140330 yatsuhaka
20140330 yatsuhaka20140330 yatsuhaka
20140330 yatsuhakaAmadeusSVX
 
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK Takashi Yoshinaga
 
Oculus rift入門
Oculus rift入門Oculus rift入門
Oculus rift入門hima_zinn
 
Mirage sololt1
Mirage sololt1Mirage sololt1
Mirage sololt1MoguraVR
 
Mirage sololt3
Mirage sololt3Mirage sololt3
Mirage sololt3MoguraVR
 
VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)
VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)
VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)Naoaki Yamaji
 

Similar to Gear vrの最適化方法を調べてみた (8)

UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話UnityとOculus Riftでフルダイブなゲームを作ってみた話
UnityとOculus Riftでフルダイブなゲームを作ってみた話
 
VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)
VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)
VRゴーグルに内蔵されたアイトラッカを用いた視線ジェスチャの識別(VRSJ2020)
 
20140330 yatsuhaka
20140330 yatsuhaka20140330 yatsuhaka
20140330 yatsuhaka
 
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
ノンプログラミングで始めるAR (HoloLens 2 / ARCore / ARKit) 開発 with MRTK
 
Oculus rift入門
Oculus rift入門Oculus rift入門
Oculus rift入門
 
Mirage sololt1
Mirage sololt1Mirage sololt1
Mirage sololt1
 
Mirage sololt3
Mirage sololt3Mirage sololt3
Mirage sololt3
 
VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)
VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)
VRニュースまとめ(バーチャルサミット関西in神戸_2018_12)
 

Gear vrの最適化方法を調べてみた