タグ「Unity」 の検索結果(1/2)

1   2   

2017年1月 3日

2017.01.03現在のCardboardはUnity5.5.0p3 + Google VR SDK v1.0.3が良さそう

【結論】
Daydream → 5.4.2f2-GVR13
Cardboard → 5.5.0p3 + Google VR SDK v1.0.3

UnityのNative対応、Cardboard向けがダメっぽい印象です。首振り追従が優先されてフレームスキップが強烈に効いてる様に見えますが、計測上40-50fps出ているのに見た目では5fps程度に落ちます。(というかめっちゃシンプルな画面なのでそもそも60fpsから落ちないでほしい。)

以下の試行はSC-05G Galaxy S6(Android 6.0.1)で確認、(Galaxy S6はDaydream not readyなのでもちろん)Cardboard向け。

・5.4.2f2-GVR13 Technical Preview + Native → フレームスキップ低fps
・5.6.0b3 + Native → フレームスキップ低fps
・5.6.0b3 + Google VR SDK v1.10.0 → ビルドエラーが取れず
・5.5.0p3 + Google VR SDK v1.10.0 → ビルドエラーは取れたがAndroidManifest.xmlマージ死。Runtime Permission対応まわりのtargetSdkVersion22だの24だのがうまくいってない。
※どこかManifest探して書き換えれば良いことはわかるが筋が悪いので追いかけない。
・5.5.0p3 + Google VR SDK v1.0.3 → 正常動作。
 ・対象シーンはGoogleVR/DemoScenes/HeadsetDemo/DemoScene
 ・いつものPlatform - Android + Default Orientation - Landscape Left + Other Settings - Bundle Identifierの変更とmin API Levelを4.4(19)に。

Unity 5.5.0p3はここから5.5系最新パッチをダウンロード
https://unity3d.com/jp/unity/qa/patch-releases/
Google VR SDK v1.0.3はここからv1.0.3を掘って
https://github.com/googlevr/gvr-unity-sdk/releases
最終的にはGitHubのここからDownload
https://github.com/googlevr/gvr-unity-sdk/blob/f391c2436426857899af1c37f0720b3985631eb3/GoogleVRForUnity.unitypackage

2016年5月22日

Google VR - Daydreamまとめ

daydream.png

2016.05.18、Google I/O 2016初日のkeynoteでGoogle VRの新たなプラットフォームとしてDaydreamが発表されました。2016 fallにローンチされるまでまだ開発途中でこれからの話やヴェールに隠されたままの話がありますが、誤解を招く様な書き方をしてるニュースサイトがいっぱいあるのでそれがもう少しマシになるといいな、ということでわかっていること、推測できることをがんばってまとめてみました。

と言いながらきっと不適切な表現や間違ったことをかいてしまっていると思いますので、質問や指摘等は気軽にいただけると喜びます。


○公式サイト以上の情報はあまりない

Google公式:Daydream
https://vr.google.com/daydream/
開発者向けGoogle公式:Google VR
https://developers.google.com/vr/

・上記のサイトの構造が示す通り、Google VR取り組みの1つに属します。
・Daydream Readyと言われる、 ある条件を満たしたAndroidスマートフォンを母艦とします。SoC, Sensors, displayが要件として挙げられております。

MediaTek's Next-Gen SoCs To Support Google's Daydream
http://www.androidheadlines.com/2016/05/mediateks-next-gen-socs-support-googles-daydream.html

MediaTekがDaydream ReadyのSoCを、と発表してるので「現行SoCはDaydream Readyではない」と想像でき、現時点ではせいぜいSnapdragon820をターゲットにしている可能性があります。
また、後で述べますがNexus 6P+N Preview3が比較的残念だったのでSnapdragon810機はDaydream Readyではない可能性もあると思っています。

・向き(モーション)の取得、クリック可能なタッチパネル、App Button、Home Buttonの2つのボタンを持った専用コントローラに対応します。

こちらはすでにGoogle VR SDK(DaydreamとCardboardがSDK上の扱いとしては一緒になりました)として公開されていますので、そのAPIドキュメントから能力が分かります。

Google VR SDK for Unity -
GvrController
https://developers.google.com/vr/unity/reference/class/gvr-controller#properties
Google VR SDK for Android(NDK) -
Controller
https://developers.google.com/vr/android/reference/com/google/vr/sdk/controller/Controller#fields

上記2つを確認するに、Quaternionのorientation、タッチパッドのタッチ操作、タッチパッドのクリック(ClickButtonと名前がついています)、AppButtonのクリックが取得できます。UnityだけなぜかVector3のGyroとAccelがとれます。
結論として、ポジショントラッキングには対応していません。

・HMDは専用のものを開発中

というニュアンスの発表でしたが、これはIPDやレンズ距離、装着性をある程度担保した、そして1stローンチの多くのDaydream readyスマートフォンの外観差をカバーできるだけのCardboard互換機であることが想像がつきます。

なぜなら特別な+αの機能はなく、レンダリングもヘッドトラッキングのためのセンサも「Daydreadm readyスマートフォンの中で全て扱う」と発表されているのですから。

Unreal Engine 4, VR and Daydream - Google I/O
https://www.youtube.com/watch?v=CEoDS__sfWA

あなたがある程度のフリークならこのUE4のDaydream紹介公式動画を見た瞬間、「なんだ、Cardboardか」と少しがっかり(安心)したはずです。

Homido
http://www.homido.com/

homido.jpg

これですね。

・Daydream向けHomeアプリの刷新

現状のCardboardアプリもHomeっぽい動きはしていますし、刷新後もおそらくCardboardで使えるんじゃないですかね。Play・Youtube・StreetView・PhotoアプリのVR対応が予定されています。


○Unity 5

あなたのDAYDREAM(空想)を現実に
http://blogs.unity3d.com/jp/2016/05/19/make-your-daydreams-a-reality/

公式にfor Unity SDK同時追従してもらってる割には手抜きかなぁ、もう少し技術的な情報を付加しておいてくれてもいいのよ?という感想は置いといてですね。

・すでにCardboard SDK for Unityをベースに、Google VR SDK for UnityとしてDaydreamとCardboard両方に対応するバージョンアップが発表同日に公開されています。

Google VR SDK for Unity
https://developers.google.com/vr/unity/

・UnityとしてのNative対応(前述のSDKのようなpluginを追加することなく、の意です)は今夏に予定されている。
・また、関連して期待されているVulkan対応はEarly Accessを3Qには予定されているとのことです。この話がProライセンス持ちユーザ限定のclosed betaなのか、現在のUnity5.4のようなopen betaなのかは現時点ではわかりません。


○Unreal Engine 4

アンリアル エンジン 4 が GOOGLE VR プラットフォーム "DAYDREAM" をサポート
https://www.unrealengine.com/ja/blog/unreal-engine-supports-google-daydream-vr

こちらは動画から開発途中、現時点でのいくつかの情報が読み取れます。HomidoにNexus 6Pが刺さっています、現ver.のコントローラは(エミュレータアプリの画像とは違って)細く、少し厚みがあることがわかります。

Let's Enjoy Unreal Engine:UE4 Google VR Daydreamアプリをサクっと試してみた ※追記あり
http://unrealengine.hatenablog.com/entry/2016/05/20/223329

更新履歴のリークがありましたが、公式にはすでに対応が終わっており、UE4のソースリポジトリにアクセスする権限が必要ですが4.12のbranchからソースビルドするとさっくりと使える模様です。

Google VR and Daydream Devices
https://docs.unrealengine.com/latest/INT/Platforms/GoogleVR/Daydream/index.html

UEの公式ドキュメントを見るとNDKまわりの設定が必要とありますので、おそらくGoogle VR SDK(NDK版)をベースにしていると思われます。

mobile向けUEの話ではsimple HMDという名前で樽型歪みとヘッドトラッキングのみ対応していたものが、drift correctionの入ったCardboard/Daydream対応のGoogle VRベースになったということだと思われます。(互換性セッティング用QRコード読み取り画面へのギアマークも入ってますし。)

iOS対応とかSpatial Audio(立体定位音響)対応はどうなんですかね?


○Nexus 6P+N Preview3による開発環境とサンプルアプリ

こちらについてもCardboard SDKとAndroidのOS Previewについて慣れている方なら、タオソフトウェアさんのタオバイザーblogのエントリを読めば一通りわかってしまって以上!という感じですが...。

タオバイザー:Google I/O 2016 で発表されたDaydreamのデモアプリを触ってみた。
http://taovisor.com/news/android-n-daydream-development-kit/

セットアップ上の注意点なども(英語の公式もがんばってるのですが)丁寧に記載されており、ありがたいエントリです。

・VRサービス設定まわりはN Preview 3以降(N5Xとかでもおそらく出るだけは出る)、IFとして動作するのはNexus 6P限定です。
・コントローラエミュレータアプリはManifestとしてはmin19(Android4.4以降)で緩めの制限なのですが、arm64-v8aのバイナリしか入ってないのでARM 64bit石の機種限定の模様です。Nexus5X, Nexus6P, Galaxy6Sで動作することを確認しています。


○試した感想

以下、実際にCardboard 2015とN6PとN5Xで試した際の画面キャプチャを中心としたツイートを雑に並べておきます。
やってる最中は「あー」「なるほどー」「腕疲れるなー」みたいにたるい感じの独り言をつぶやいており、ぶっちゃけあまり感動していなかったことをムダ情報としてお伝えしておきます。

○2016.05.26追記

Qualcommの中の人がSnapdragon820でどうがんばったとか、砂820の自慢話してます。2ページ目も読むのをお忘れずに。(EE Times日本語版は省略して適当翻訳で情報量がかなり減ってますので差分は原文で補完するのをオススメします。)

Google's Daydream is Silicon Reality | EE Times
http://www.eetimes.com/author.asp?section_id=36&doc_id=1329737

2016年1月23日

THETA SのUVCモードをUnityで試す(いまさら)

発売前後に識者達のハックが多数あったのですが、Unity力が低すぎて見てるだけでは当時よくわからなかったのを今更試してみました。

1. 何ができる子なのか全容を把握する

RICOH THETA S 発売したので、個人用メモ - izm_11's blog
http://izm-11.hatenablog.com/entry/2015/10/25/004048

はむ!の空想具現化したいブログ
http://hammmm.hatenablog.com/entry/2015/12/06/181603

を読んで全てがわかる人はそれでおkな感じです。

2. THETA SのUVCモードでwebcamとしてプレビューする

RICOH THETA S 使用説明書:ライブ映像をパソコンで見る
https://theta360.com/ja/support/manual/s/content/streaming/streaming_01.html
>カメラの撮影モードボタンを押しながら電源ボタンを押して、電源をオンにする

LIVEがピカピカ点滅するモードになったらUSBを刺します。
プレビューはHTMLの世界に任せて、ブラウザでいいでしょう

WebcamJS Test Page - HD Capture
https://pixlcore.com/demos/webcamjs/demos/hd.html

ChromeだとURL欄の右端、カメラマークからTHETA Sが選べます。

thetas-01.png

3. Unityで動かす

Stereoarts Homepage
http://stereoarts.jp/
>Unity 向けの THETA / THETA S の全天周画像をリアルタイムに Equirectanguler に変換するシェーダーと、それらの補助スクリプト一式です。
>ThetaShaderPack_20150926.zip

・Unity(5.2.2p4)で新規プロジェクトを作成。
・GOROmanさんが+αつきのTHETA SなWebCamTextureを扱うスクリプトをGistに置いてるのでそれを持ってくる。

UnityでWeb Cameraをテクスチャにアサインし、そのテクスチャをPNGでセーブする例
https://gist.github.com/GOROman/2abc0a2c8b94a36935bf

・ThetaShaderPack.unitypackageをimport。

いくつかシーンがありますが、360CameraはTHETA Sには直接は関係ないので置いといて、ThetaRealtimeEquirectanglerシーンを開きます。
先ほどのWebCamスクリプトをMain Cameraにアタッチします(別にアタッチ先オブジェクトはなんでもいい)。
WebCamスクリプトのMeterial欄にThetaRealtimeEquirerectagler(Backward)かThetaRealtimeEquirerectagler(Forward)を選択すると、それぞれTHETAの前面と後面が表示されます。
ThetaRealtimeEquirerectagler(Both)は両面ですが、シーン上のPlaneが無効化されてるので切り替えてから再生する必要があります。

thetas-02.png

次にThetaRealtimeSkyboxシーンを開きます、再度WebCamスクリプトをMain Cameraにアタッチします。
Material欄にThetaRealtimeSkyboxを選択して再生すると、めでたくskyboxにTHETA Sのストリーミング映像が表示されます。

thetas-03.png

thetas-04.png

これをさあ何かに応用を・・・と考えてもなかなか面白い案が思いつきません、どうしたものか:)

2015年8月 8日

#C88 TechBooster本にスマートフォン向けのVR開発入門について書きました

c88-android-m-thumb.png

C88 3日目(2015/8/16)東A39a TechBooster
https://techbooster.github.io/c88/

上記のC88てくぶ本、「Android Masters! ダンジョンにAndroidの最新情報を求めるのは間違っているだろうか」の、「第7章 Unity 5.1で入門するVRアプリ開発」というタイトルの章を担当しました。
私の章の内容はニッチですがCardboard SDK for UnityとGear VR+Unityに関するVRコンテンツ開発の入門向け、現時点ではオンリーワンなものになっていると思います、VRに興味のある方はぜひ。
興味のない人も他の章や本をひっくるめ、大変魅力的なものに仕上がっていますので、購入したついでに私の章も読んでくれるとよろこびます:)

イカ、書き出しのチラ見せと目次です。

c88-android-m-7.png

【目次】
1 はじめに
1-1 VRのR(Reality)と本章で扱う範囲について
1-2 想定読者について

2 VRとスマートフォンの関係
2-1 手持ちのスマートフォンで始めよう
2-2 具体的な機種とコンテンツの選び方について
2-3 よりハイエンドなデバイスと、その価格について

3 スマートフォン向けVRデバイスの紹介
3-1 Google Cardboard
3-2 ハコスコ
3-3 Oculus Gear VR

4 VRと3Dとコンテンツ開発手法
4-1 VRコンテンツは3Dで、3DならUnityで
4-2 Cardboard SDK for Unityのメリット
4-3 コラム つくってみるメリット

5 VRアプリ開発環境の構築
5-1 手順のおおまかな流れ
5-2 Android SDKとインストール
5-3 Unityのインストールとバージョン
5-4 Cardboard SDK for Unityのダウンロード

6 Cardboard向け、VRアプリのHello, World
6-1 新規Unityプロジェクトの作成
6-2 Cardboard SDK for Unityのインポート
6-3 プレビューの再生
6-4 Androidプラットフォーム向けの設定
6-5 ビルドとインストールと実機での実行

7 PONGアプリをCardboard向けに対応させる
7-1 新規プロジェクトとPONG unitypackageのインポート
7-2 Androidプラットフォーム向けの設定
7-3 Cardboard SDKの適用
7-4 VRらしい自機制御スクリプト

8 PONGアプリをハコスコ向けに対応させる

9 PONGアプリをGear VR向けに対応させる
9-1 新規プロジェクトとVirtual Reality Supportedチェックボックス
9-2 Osigファイル(Oculus Signature File)の準備
9-3 Gear VR Service開発者モードの有効化

10 おわりに

<よもやま>
・Unity 5.1.1p3で書き始めて、何度かのUnityのアップデートと戦いつつ、最終的には5.1.2p2でUnityのクラッシュと鉢合わせしました。
・入稿後にCardboard SDK for Unityがv0.5からv.0.5.1になって、よりにもよってunitypackageの数が変わってしまいました。
・紙版では間に合っていませんが、ダウンロードカードの付属する電子書籍版ではUnity 5.1.2p3とCardboard SDK v0.5.1の差分に対応しています。

2015年6月21日

Unity 5.1とGoogle Cardboard SDK for Unity v5.0を試す

タイトルと関係ありませんが突然の宣伝です。てくぶことTechBoosterがC88も当選されたとのことでおめでとうございます、youtenはC87ではやたらと後ろ向きな記事を書きましたが今回はCardboard SDKの話を中心にGear VRまで含めたスマホ向けVRの話を書こうと考えております。(無事に掲載されるかはさておいて)これを読んだAndroid開発者がVRの波動に目覚めて突然開発したくなるような記事にしたいと思います。全裸で。

さて本題に戻りまして、Unity 5.1が出たのでCardboard SDKがおかしなことにならないかを確認してみます。VR的にはUnity 5.1の目玉はVRのNative対応で、その中身はOculus Rift/Gear VR向けなOculusなSDKが組み込まれただけ、という認識なのですがちょっと自信ないです。

Unity 5.1.0p1 2015.06.12
https://unity3d.com/jp/unity/qa/patch-releases

Google Developers:Getting Started with Unity for Android
https://developers.google.com/cardboard/unity/get-started

イカ、作業メモ

u51-01.png
Unity 5.1を起動します。いきなりログインを求められましたがWork Offlineでも良さそうです。
New Projectを作成します。

u51-03.png
CardboardSDKForUnity_v5.0.unitypackageをimportします。"API Update Required"ダイアログが出ますが気にせずI Made a Backup. Go Ahead!を選択します。

Cardboard/DemoScene/DemoSceneを開きます。おもむろに再生します。いつものDemo Sceneが動作します。
u51-04.png

別名のMainというシーンで保存。Build Settingsを開いてAndroidにSwitch Platform。Add CurrentでMain.unityを追加、Development Buildチェックをonに。
Player Settingsを開いて、Company Nameを変更、Resolution and Presentation->OrientationをLandscape Leftに、Other Settings->Bundle Identifierを独自パッケージ名に変更。
Build Settingsに戻ってBuild And Runを選択。U51HelloCB.apkあたりの適当な名前をつけてSave。

v4.10からv5.0の差分を確認しておきます。
https://developers.google.com/cardboard/unity/release-notes

抜粋して紹介。
・iOSサポート。
・C++でヘッドトラッキングと樽型歪み補正を実装、JavaベースのコードはLegacyフォルダに移動。
・Cardboard.csとVRDeviceというクラスでリファクタ、Android, iOS, Unityエディタ上で同様に扱えるよ。
・新しいイベントtilt(横向きに傾ける、BackやExitの意)、trigger(Cardboard v2のトリガーが引かれた状態、タップと同義のはず)に対応
・Cardboard.SDK.BackButtonExitsApp「BACKボタンでアプリ終了」は廃止。
・Cardboard.SDK.IsInCardboard「今Cardboardにスマホが入っているのか」(おそらくmagnet判定だったのでCardboard v2の変更に伴って)は廃止。
・残念ながらDevelopment Build チェックまだは必要?(5.0.0f4で試した限りは、と書かれている。5.1.0p1では大丈夫な気配?)
・Multi-threaded renderingは今はまだサポートされていない。
・細かいですがDemoSceneの真下に出るMenuのVR ModeというButtonのEvent実行先がCardboard.ToggleVRModeからTeleport.ToggleVRModeにお引っ越しされてました。Cubeを消して下のメニューを使い回す際にはご注意ください。

Cardboard/Scripts/Cardboard.csに以下の様なメソッドを追加してやれば代用が効きます。
public void ToggleVRMode() {
VRModeEnabled = !vrModeEnabled;
}

u52-05.png
ちまちま他のこともしてみましたが、Cardboard SDK for Unity v5.0を使う分にはさしあたってUnity 5.1で困らなそうです。

そういえば、今日Cardboard v2触ったんですが適当にGalaxy S6突っ込んだらぜんぜん像が結べなくて3Dに見えなくて苦労しました。QRコードによるProfile調整必須です、Nexus5/Galaxy S6あたりにあわせてあるとダメです。DIVE pluginモノはN6とかiPhone 6plusならちょうどいいんじゃないのかな...。

つまり今後というか現時点ですでにCardboard互換品には例のQRコードが必須ということです。...Googleさん、もう少しアナウンスというか啓蒙がんばった方がいいと思うよ。

2015年6月 8日

PMCA その1

別にお金を払いたくないわけでも3D-Unity(VR)で商用活動がしたいわけでもないのですが、自分で書いたライセンスを自分で守らない人とか、法律も作者の気持ちでどうにかなると思ってる人のことを想うとつらい気持ちになります。Figmyがぶっこみましたね。CC-BYのpmdが欲しい病を長く患っている自分にも少しだけ気持ちは分かりますが、ああなってはおしまいだと思います。

前置きはさておいて、PMCAというパーツPMDからモデルを組み立てるツールがありまして、ちょっと前に存在を知っていたのですが今更試してみることにします。

PMCAv0.0.6について
http://matosus304.blog106.fc2.com/blog-entry-215.html
りどみ.txtを読むとPMCA自体はPDとあるので生成pmdにライセンス制限はかからないことになります。(というかデフォルト設定でAuthorがmato氏のLicense PDという文字列が固定になってしまうのは良いのでしょうか...)

PMCAv0.0.6r10aWindows版
https://bowlroll.net/file/3714

Python実行環境同梱版をダウンロードして、zipを展開してrun.batで起動します。
pmca-01.png
pmca-02.png
適当にポチポチと選択してpmdを出力します。
ちょーかんたんお手軽1分でpmdができました。

pmca-03.png
ちょっとだけテクスチャの色合いだけいじってMMDに持っていきます。

pmca-05.png
なるほど。

Unityに持っていきます。

pmca-06.png
なるほど。

Carboard SDKを適当に放り込んでスマホに持っていきます。

pmca-07.png
なるほど。

これで色々な点が概ねいいんじゃないでしょうか。

2015年5月 5日

Gear VRのトラックパッドでドラッグ

GearVRの入力を使う
http://tamagokobo.blogspot.jp/2015/05/gearvr.html

パッドのどの部分を触ってもまずはX:1280,Y:720の座標が返されます。 ドラッグで動かすと触った部分を起点として座標が変化します。 なのでタッチパッドのどの部分を触ったかという判定は取れないようです。

おおなるほど。

マウスやスマホ側のタッチパネル直接操作時との互換性を考えて、タッチした瞬間のXY座標を保持しておく作戦でドラッグを実装してみます。

続きを読む "Gear VRのトラックパッドでドラッグ"

2015年5月 4日

【MMD】かわいいよ摩耶様かわいいよ【Gear VR】

maya01.jpg
【MMD艦これ】摩耶様は一騎当千【モデル配布】
http://www.nicovideo.jp/watch/sm26159359

cham*さんの摩耶様改二が可愛かったのでGear VRで課題曲を踊っていただきました。

mayaicon.png

摩耶様「はぁ?」
摩耶様「お前、バカだろ」
摩耶様「しょーがねぇなぁ、一度だけだぞ?」

脳内余裕です。

続きを読む "【MMD】かわいいよ摩耶様かわいいよ【Gear VR】"

2015年5月 2日

Gear VRとGalaxy S6を買ったので原点に戻ってミクさんに踊っていただいた

racingmiku2015.jpg

○はじめに

一通り試したのでメモを残しておきます。
DK2も、AndroidどころかDive SDKもCardboard SDKも触ったことがない人にはちょっと大変かもしれませんが、それなりに知識がある人だったらセットアップ手順はいろいろな点で親切になっており、概ね誰でも(非プログラマーでも)嫁召喚はできると思われます。

Galaxy S6/S6 edge自体は5inchと小さ目で解像度は高く、パワーもありますので単眼ハコスコ・双眼Cardboard互換組にもオススメのデバイスと言えそうです。...フラッグシップと言えるのでお値段は決して安くありませんけどね!

Android開発環境とかUnity5.0.1pXでの対Androidの話は、以前に書いたエントリ【スマホVR】Unity 5 PersonalとCardboard SDKで嫁をAndroidに召喚する【MMD】 #JAGVRを参照ください。

続きを読む "Gear VRとGalaxy S6を買ったので原点に戻ってミクさんに踊っていただいた"

2015年4月20日

Cardboard SDK for UnityをMoverio BT-200にあわせてみる

cardboard-lat-bt200.png

Cardboard SDKの樽型歪み補正はoffできますので、BT-200に使えないかどうかいじってみました。
OMAP4じゃ流石にパワーの観点からもつらそうなのですが、FOVやアスペクト比判定まわりにまだまだ改善(というかバグとりのレベル)の余地がありそうです。

・Native Distortion Correction(樽型歪み補正)を外す。
・Build SettingsのDevelopment Buildチェックは逆に不要な模様なので外す。
・Plugins/Android/AndroidManifest.xmlのminSdkVersionを16(4.1)から15(4.0.3)に変更。
・FOVは60から30ぐらいにする。でもなんかおかしいのでもっと低い?
・CardboardEye.csの以下の箇所を変更する。でもまだ下端に余計な黒帯が出てるので改造が足りてません。

// float aspectFix = camera.rect.height / camera.rect.width / 2;
float aspectFix = camera.rect.height / camera.rect.width / 4;

// dir = dir.normalized * ipdScale;
dir = dir.normalized * 0.1f; // set fixed ipdScale

3Dモードには手動で切り替えてください。ちなみにDemoSceneはこんな感じになります。
cardboard-sdk-bt200.png

誰か続きをたのむ(投

2015年1月 4日

クソゲーつくったよー^o^

shoot3.png

だいぶUnityに関するぐぐり力が上がってきた気がするのでチュートリアルのブロック崩しとUNIDRA本のアクションゲー以来、初めてシューティングゲームというものを作ってみた。ほどよく詰め込んでなかなかのクソゲー味が出せたと思うので次回またがんばりたいです。

Shooting1.zip(12.0MB)

2015年1月 3日

あいえるたんサマソ2

samaso2.png
samaso1.png

以前書いたエントリでUnity FreeとProのパフォーマンス差が疑わしかったのですが、新しくUnity4.6で作り直してみたところ、MMD4Mecanimの物理演算をオフにするとFreeビルドとProビルドでパフォーマンス差がないことが確認できました。

prosamaso.png

ビルドしたexeは以下のリンクからダウンロード可能です。

あいえるたんサマソ2
AielSamaso2.zip(20.4MBぐらい)

【開発環境】Unity Pro 4.6.0p1+Oculus SDK 0.4.4
【モデル】あいえるたん
【モーション】【第12回MMD杯EX】反動三段蹴り&サマーソルトキック・モーション配布(一部改造)

物理演算をオンにするとFreeだと2,3体、Proでも4,5体からfpsを維持できなくなるのでこのあたりはFreeとProのマルチスレッドのなんたらには関係がありそうです。Join Local Worldのチェックのオンオフで良くなったりもするみたいですがイマイチこちらは傾向がまだつかめてません(MMD4Mecanimのバージョンにも依存しそうですが...)

2015年1月 2日

uGUIでOculus Rift向けに大きな文字を表示する

ugui-text05.png

僕だけかもしれませんがUnity4.6でuGUIになって3D TextがCanvas+TextになったらOculus Riftで良い感じに大きめのTextを表示するのにやたらと苦戦したのでメモっておきます。

<結局のところ注意すべき罠は以下の2点>
1. uGUIのCanvasサイズは実際のpixel数ぐらいにすべし、と400x400ぐらいにするとでかすぎてまったく見えなくなってしまう罠は、Scaleを0.005とかに大胆に縮める必要があること。
2. フォントサイズ20程度じゃVRは厳しいので64とかにするとまったく表示されなくなってしまう罠は、デフォルトがTruncateなので表示範囲が足りてないだけということ。これデフォルトOverflowで良かったと思うんですよ...

続きを読む "uGUIでOculus Rift向けに大きな文字を表示する"

2014年12月15日

Cardboard/タオバイザーハンズオン 初心者向け3DVRアプリ開発マニュアル

◯はじめに

本資料は以下のハンズオンイベント用の資料という位置づけですが、「Cardboard/タオバイザー向け3DVR AndroidアプリをUnityで作る初心者向けドキュメント」として整備していけたらいいな、と思っています。

以下の3コースがあります。共通編で環境を確認後、それぞれのコースに分かれて作業を継続してください。

・【Aコース】クエリちゃんコース
・【Bコース】ユニティちゃんCandyRockStarコース
・【Cコース】MMD4Mecanim+ドロイド君コース

続きを読む "Cardboard/タオバイザーハンズオン 初心者向け3DVRアプリ開発マニュアル"

2014年12月13日

【Oculus】OVRPlayerControllerで自由に空を飛ぶ方法【ゆるふわコピペ】【SDK0.4.4】

yukihane-party.png

おはようございます。youten@ゆきはね13式サンタさんがかわいすぎるんじゃああああです。

このエントリはOculus Rift Advent Calendar 2014の12/13のエントリです。

<確認環境>
Win8.1 MSI GS60(GTX870M)Extend Mode
Unity Free 4.6.0p1
http://unity3d.com/unity/qa/patch-releases
Oculus SDK 0.4.4 Beta
https://developer.oculus.com/downloads/

ovrplayer1.png

<本エントリの目的>
Oculus Rift SDKのPrefabsには固定向けのOVRCameraRigと、動作キャラ用のOVRPlayerControllerというものがあります。
GamePad等で自キャラを自由に動かしたい際には、OVRPlayerControllerを設置する必要があるのですが、Toscanyデモがごとく、FPSな視点で地上を歩く想定した作りになっており、「空中を自由に飛び回りたい」と言った際には私の様なUnity初級者にはなかなかハードルが高いスクリプトです。

バージョンが固定できるのであれば1回つくって入れ替えてしまえば済むのですが、今後に備えて備忘録代わりに理解したことをメモっておくことにしました。

<OVRFlyingPlayerController.cs>
本エントリで変更した初期値・コードを最初っから適用した空飛ぶカメラのためのOVRFlyingPlayerController.csもおいておきます。
OVRFlyingPlayerController.cs
flying.png
チマチマ編集が面倒な際などに、OVRPlayerContollerスクリプトと入れ替えの上、本エントリを参考にお使いください。

続きを読む "【Oculus】OVRPlayerControllerで自由に空を飛ぶ方法【ゆるふわコピペ】【SDK0.4.4】"

2014年12月11日

Google Cardboard SDK for Unityを試してみた

cardboard-sdk-unity-sample.png

Cardboard SDK for Unity
https://developers.google.com/cardboard/unity/

一応それっぽいものは取れたりしたものの、「あとはOpenGLがんばってね」という厳しかったCardboard SDK for Androidのfor Unity版が出ましたのでいろいろ生け贄に捧げつつ試してみました。

続きを読む "Google Cardboard SDK for Unityを試してみた"

2014年12月 4日

第三回 Oculus Game Jamに参加してきた #OcuJam #Ocunif

OcuJamに参加してきました。色々大変だったけど楽しかったです。Unity力が...Mecanim力がほしい!

第3回 Oculus Game Jam in Japan【東京西新宿ニフティ会場】
http://ocujam.doorkeeper.jp/events/15360

◯発表資料
錬金術師ごっこ
http://www.slideshare.net/youten_redo/ss-42154704

以下、当日の流れとつくったものメモ

続きを読む "第三回 Oculus Game Jamに参加してきた #OcuJam #Ocunif"

2014年11月16日

Cardboard向けにユニティちゃんCandy Rock Starをビルドする

Oculus Rift DK2向けにはこちらで書きましたが、Cardboard/タオバイザー/双眼ハコスコ向けにもDive Pluginのカメラ突っ込んでるだけですがビルドしてみました。

【2014.12.23追記】試してみたい方はこちらからapkをどうぞ。66MBとサイズがそれなりな点にはご注意ください。
https://github.com/youten/unitychan-crs/releases/tag/v0.2
# obb splitとAndroid Manifest更新に成功したらPlay公開もしてみたいところです...

以下、手順メモ。

続きを読む "Cardboard向けにユニティちゃんCandy Rock Starをビルドする"

2014年11月 2日

あいえるたんサマソ

3.png

Oculus SDK 0.4.3でUnity Freeにめでたく対応したのですがどうも極端にパフォーマンスが出ていない気がしたので。

・なんか特定のモーションをし続ける
・ボタンでモデルが増減する
・fpsを表示する
・DK2用アプリ

を作って調べてみました。

○先に結論

※Unity4.6+Oculus SDK 0.4.4で追試したあいえるたんサマソ2に新しい情報を書きました。exeダウンロードもそちらからどうぞ。

続きを読む "あいえるたんサマソ"

2014年10月28日

Unity Freeに対応したOculus SDK 0.4.3を試す

Oculus VR SDK 0.4 Version 0.4.3 Beta
https://developer.oculusvr.com/?action=hist&ver=21
> Unity 4.5.2 and 4.5.5 are supported; 4.5.3 and 4.5.4 are not. Also added support for Unity Free in Unity 4.5.5 and up.
期間限定Pro Licenseを借りているので、いったん返却してFreeに戻します。

Unity 4.xライセンスの管理 / Managing your Unity 4.x license
http://docs-jp.unity3d.com/Documentation/Manual/ManagingyourUnity4xLicense.html
Help -> Manage License... -> Return License で初期状態に戻ります。

ランタイムはまだ0.4.3に上げずに0.4.2の方がいいらしい...?

上記のtweetに続く野生の男さんとザバイオーネさんの会話を見ても安定板が見つかるまでは人柱雰囲気がプンプンします。まぁそんなもんでしょう。

以前のエントリでUnity Proで試したこれが、Free版で問題なくイケるかを試します。

【Oculus Rift DK2】Unity Proでオキュラスに嫁を召喚するマニュアル【MMD】
http://greety.sakura.ne.jp/redo/2014/10/OculusDeMMD.html


<環境>
Unity(4.5.5)
http://japan.unity3d.com/unity/download/
Oculus Rift SDK(Version 0.4.3 Beta、DK2本体のFirmware ver.は2.12。)
https://developer.oculusvr.com/?action=hist&ver=21
Stereoarts:MMD4Mecanim(MMD4Mecanim_Beta_20141020.zip)
http://stereoarts.jp/
モデル:Appearance Miku あぴミク
http://piapro.jp/t/KPU3
楽曲:サイバーサンダーサイダー
http://piapro.jp/t/_Anb
モーション:【MMD-DMC4】サイバーサンダーサイダー【モーション配布】
http://www.nicovideo.jp/watch/sm19635968

著作権等は各製作元に帰属します。ピアプロライセンスについてはこちらを参照ください。
http://piapro.jp/license/pcl/summary

<手順メモ>
・新規Projectを作成、名前はFree043に。
・OculusUnityIntegration.unitypackageをダブルクリック、ProjectにImport。
・MMD4Mecanim.unitypackageをダブルクリック、ProjectにImport。
・あぴミクさん、サイバーサンダーサイダー楽曲、サイバーサンダーサイダーモーションをAssets配下にフォルダ毎D&D。
・Appearance Miku/Appearance Miku.MMD4Mecanimを選択、Readme.txtを確認後、利用規約とPCLに同意。
・Advanced ModeのチェックをON、Vertex Scaleを12に増加、VMDにサイバーサンダーサイダー(さっちゃそ).vmdをセットしてApply->Process。
・ProjectタブからCreate->Animator Controllerを選択、apmiku等適当な名前に設定、ダブルクリックでAnimatorウィンドウをopen。
・生成されたAppearance Mikuモデル配下のサイバーサンダーサイダー(さっちゃそ).vmdをAnimatorウィンドウにD&Dして保存。
・Ctrl+sするとシーン名を聞かれるのでMainと入力してEnter。
・Cubeを0,-0.5,0でScale100,1,100にして床っぽく配置、Drectional Lightをななめ上に配置、あぴミクさんを配置してRotationを0,180,0にしてこちらを向かせます。最初から配置されているMain Cameraはちょっと遠いのでzを調整して近づけます。
・Hierachy上に配置したAppearance Mikuに先ほど生成したAnimator ConrollerをD&Dで適用。
・Hierachy上に配置したAppearance Mikuを選択してMMD4Mecanim ComponentのPhysicsタブで物理演算を有効に、Animタブで同期用音楽をセットします。wave曲の3D Soundチェックは外してApplyを選択。
・ここで再生してモデル・モーション変換とAudio適用が動作していることを確認。

・Main Cameraをおもむろに削除、代わりにAssetsからOVR/Prefabs/OVRPlayerControllerをHierarchy上に配置します。

ovr043.png

・OVRPlayerControllerの構造が変わってますね...。Use Player EyeHeightドコー?ひとまずえいやハックして、XBOX360コントローラで上下左右カメラが自由に動けるようにします。

i) Gravity Modifierを0にして重力をなくします。
ii) OVRPlayerController.cs UpdateMovement()内でisGroundまわりをちょっとコメントアウトして空中でもカメラが操作できるようにします。

    // No positional movement if we are in the air
// if (!Controller.isGrounded)
// MoveScale = 0.0f;

iii) GamePad Buttonの定義まわりが変わっていることに気を付けながら、L1/R1で高さが動く様にします。Update()後ろの方で、y方向のmoveDirectionを強制的に書き換えます。

    // L1/R2 Eye Height
    if(OVRGamepadController.GPC_GetButton(OVRGamepadController.Button.L1) == true)
    {
        moveDirection.y = -0.01f;
    }
    if(OVRGamepadController.GPC_GetButton(OVRGamepadController.Button.R1) == true)
    {
        moveDirection.y = +0.01f;
    }
    
    // Move contoller
    Controller.Move(moveDirection);
※SDK0.4.3.1でGamepadの定義名が変わってるのでL1をLStickに、R1をRStickに変更する必要があります。

・適当にBuild Settingしてexeを生成、起動。
・DisMonでメインディスプレイを切り替えてもRiftじゃない方のディスプレイに出力される病が出たのでshift押し起動で回避。
・無事動作。75fpsで特におかしいところなし。めでたしめでたし。

free043.png

【2014.11.02追記】
つみ式榛名改ニにうおおおしてたところ、どうもパフォーマンスがよろしくないことに気づきました。具体的にはモデル3体ぐらいで75fpsが保てなくなってこれはどういうことだろう、とモデルの数を増減させてみたところ、Unity Free4.5.5+SDK0.4.3ではUnity Pro4.5.5+SDK0.4.3と比較して大幅にパフォーマンス低いことが判明してしまいました。
runtime0.4.2と0.4.3両方試しましたが傾向に大差なし。バージョンアップを待ちましょう。

freesamaso.zip
prosamaso.zip
Free/ProどちらもUnity4.5.5+Oculus SDK0.4.3。
モデル:あいえるたん
モーション:【第12回MMD杯EX】反動三段蹴り&サマーソルトキック・モーション配布

【2014.12.14】
0.4.4で追試、MMD4MecanimのJoin Local Worldチェックを外すことで4, 5体までは問題ないことを確認。Unity Pro買ったのでまた別途時間できたら調べなおしますgdgdですいません

1   2