2017年5月28日

LT募集があったので #ABC2017s に行ってきた

abc2017s-leaflet.jpg

LTにホイホイ申し込んでしまったのでAndroid Bazaar and Conferenceに行ってきました。

日本Androidの会 Android Bazaar and Conference #ABC2017s
http://abc.android-group.jp/2017s/

続きを読む "LT募集があったので #ABC2017s に行ってきた"

2017年5月18日

AVRShow 2017 in Tokyo #AVRS レポ

2017.05.03に開催されたAVRShow 2017 in Tokyoのいまさらのレポです。レポというよりメモですが。

AVRShow 2017 in Tokyo
http://avrs.jp/

続きを読む "AVRShow 2017 in Tokyo #AVRS レポ"

2017年4月27日

鈴谷かわいいよ鈴谷

suzuyakai2.jpg

鈴谷改二が「高3になりました」というツイートを見た気がしますが天才だと思いましたね。

つみ鈴谷改二がかわいすぎたのでセコセコと動作確認用にSBSステレオ動画を出力しました。
suzuyakai2.mp4(SBSステレオ3200x1600 16Mbps、374MB)

モデル:【MMD艦これ】鈴谷改二のメーベル【モデル配布】
http://www.nicovideo.jp/watch/sm31090397
モーション:【MikuMikuDance】 おねがいダーリン 【MMDモーショントレース】
http://www.nicovideo.jp/watch/sm29131518
音源:おねがいダーリン 歌ってみたver.柊 優花
http://www.nicovideo.jp/watch/sm27864719

Gear VRユーザはSamsung VR(旧Milk VR)で。国限定が今でもかかっているかわかりませんが、かかっていたらVPNアプリで超えられます。Oculus Videoでもファイル名やメタファイルをきちんとすれば見られるかもしれません。
DaydreamユーザはSKYBOX VR Playerで。
CardboardユーザはFreeVRPlayer(Android版)で。iOS版もあります。
PSVRユーザはLittlStarのSideloadでみられるようになりました。

ひと昔前の「ステレオのTop-Bottom EquirectangularをYouTubeにアップロードしちゃえ」が唯一の選択肢の時代から、それなりに選択肢が増えてきました。
良いことですね。
あとは前方180度でいいので数万円で4Kが撮れるカメラを誰か市販してください...っ!

2017年4月11日

「VRエンジニア養成読本」でUnity+Google VR SDKでCardboard向けにVRアプリをつくる初心者向けの記事を書きました

本日4/11が発売日ということで、少し補足情報を述べておきます。

◯書籍全体について

vr-yousei-mokuji.jpg

技術評論社の公式ページには概要と目次が両方掲載されていますが、タイトルはVRでばっさり、表紙からVRなのにHoloLensとか、概要もゆるふわで掴みづらいので、目次を確認してください。

・「巻頭特集」として、既存VR/MRデバイスと、近い将来リリースされるハードなどについて、@yamashin0429さんが書いています。
・「特集1」として、VRアプリ開発初心者向けに、「Cardboard向けに壁打ちゲームアプリの作り方」・「Oculus向けにユニティちゃんをよびだすアプリの作り方」・「とくにターゲットは限定しないQuaternion、角度と頭・視線の話」をそれぞれ私@youten_redo@Somniumさん、@oukaichimonさんが書いています。
・「特集2」はもう少し実践的な話として、「プロ生ちゃんとロッカーに閉じ込められる「至近距離ガールVR」のデザイン」について@kohki_nakajiさんと@mementomori72さんが、「いまいる場所の把握や方向をわかりやすくする空間設計」について@tsuhirさんが書いています。
・「一般記事」は1つだけしかなくてもう特集とか一般とかの分類がよくわかりませんが、360度動画・VR動画の特徴について初心者向けの話を@kohki_nakajiさんが書いています。
・「特集3」はHoloLensそのものの話と開発入門(むしろ開発環境紹介)を@yuujiiさんが書いています。
・「特集4」としてVRに関連した3D技術の応用事例として2記事、両人の持ちネタである「@Somniumさんのボクセル変換と3D出力の話」と「@n_ryotaさんのUnityでProcessingっぽいことができるようしたUnicessingを使ったVRなジェネラティブアートの話」が書かれています。

◯私が書いた「特集1 Unityで作る 入門! VRアプリ開発」内、「第1章 Google CardboardとAndroidでスタート はじめてのVRアプリ」について

macOS/Windows対応でゼロからJava(JDK)・Androidのビルドツール・Unity(5.5最新を想定)をインストールして、Google VR SDKをセットアップして試したのち、Cardboard向けに壁打ちゲームをスクリプト込みで作成する手順を詰め込みました。
Daydreamの話を書こうと思っていたところ、「マニアックなものや上級者向けのコンテンツばかりではなく、初心者向けのものも入れ込みたい」という要望を受けて書いたもののため、VRアプリ開発の初心者向けに(おそらく)なっています。

・Unity 5.6対応の話

記事はUnity5.5で書いたのですが、最新のUnity5.6ではUnityのVRへのネイティブ対応の影響でそのままでは動作しません。以下の2点、差分対応をお願いします。

1. 「PlayerSettings」の「Other Settings」中、 「Virtual Reality Supported」のチェックをONにして、「Virtual Reality SDKs」に「Cardboard」を追加してください。

unity560-gvr-cardboard-01.png

2. Google VR SDKのAPIをUnityのVR APIに変更する必要があります。(Google VR SDK中にifdefで分岐があるとのことです

頭の向きを取得して自機(バー)の位置を変更するMeMain.csを以下の様に変更してください。詳細はコメントを参照願います。

void Update ()
{
    #if UNITY_EDITOR
    // キーボードによる自機の移動(Unityエディター上限定のデバッグ用)
    if (Input.GetKey (KeyCode.LeftArrow)) { // ←キー
        if (-MAX_ME_X < transform.position.x) {
            transform.Translate (Vector3.left * 0.3f); // 左へ            
        } 
    }
    if (Input.GetKey (KeyCode.RightArrow)) { // →キー
        if (transform.position.x < MAX_ME_X) {
            transform.Translate (Vector3.right * 0.3f); // 右へ
        }
    }
    #else // not UNITY_EDITOR
    
    // Cardboard (Google VR)での首振りによる自機の移動
    #if UNITY_5_6_OR_NEWER
    // Unity 5.6以降の場合はUnityネイティブのVR対応を利用することになるため、
    // PlayerSettingsのVirtual Reality SupportedチェックをONにして、
    // Cardboardコンポーネントを追加する必要があります。
    Quaternion head = InputTracking.GetLocalRotation(VRNode.Head);
    #else // 5.5 or older
    Quaternion head = GvrViewer.Instance.HeadPose.Orientation;
    #endif
    
    if (head != null) {
        float posX = Mathf.Clamp (head.y * 20.0f, -MAX_ME_X, MAX_ME_X);
        // move bar
        transform.position = new Vector3 (
            posX, // x
            transform.position.y, // y
            transform.position.z); // z
    }
    #endif
}

Unity5.6に対応した記事内のアプリのUnityプロジェクトは以下のGitHubリポジトリに配置しました。
問題があったら他のスペースに移動されるかもしれませんがよければ参考にしてください。

youten/Yousei-HelloCardboardVR
https://github.com/youten/Yousei-HelloCardboardVR

・Android SDK ManagerのGUIとCUIの話

Android SDKと必要なコンポーネントのダウンロードについて、GUIベースで記載してしまいましたが、CUI版のコマンドラインツールとしてのsdkmanagerのみが同梱されるように変更になっています。
コマンドラインツールをダウンロードしてzipを展開するとtoolsフォルダがでてきますが、tools/bin配下のsdkmanagerバイナリ(Windowsだとsdkmanager.exeのはず)で以下のようなリストアップ・ダウンロード(インストール)コマンドを実施してください。

tools/bin/sdkmanager --list
tools/bin/sdkmanager "platform-tools" "build-tools;25.0.3" "platforms;android-25"

# 2GB近いダウンロードとか、展開後のディスクスペースに余裕がある方はAndroid StudioのSDK入りをダウンロードしてしまっても概ねなんとかなりますが、記事中にも記載している通り、色々便利なため、adbコマンドなどパスを通してCUI側のツールを使うことをオススメしておきます:)

◯余談
Daydreamについて書きたかったのにCardboardについて書くことになったので「CardboardとDaydreamについて」という趣味丸出しの節がコラム枠で含まれています。購入された方は僕の顔を思い出しながら読んでやってください。


P.S.
冬休み明けに初稿、3月に入って涙目の全スクショ撮り直しで4/11発売のこの書籍と、ノリノリで4/1リリースのUnity5.6や4/5の12.1話ネタまでぶちこんだ先日の技術書典2向けの4/9頒布の同人誌。時間というものはほんとに強大な敵だな、と感じています。

2017年4月 6日

技術書典2 れいぞうこのドア か-10にて「VRコンテンツのつくりかた」を頒布します #技術書典

今週末の2017/4/9(日)の11:00-17:00、アキバ・スクエアで開催される技術書典2にて、「VRコンテンツのつくりかた」という本を頒布します。1冊500円です。36ページぐらいです。
サークル名は「れいぞうこのドア」、スペースは「か-10」です。

gi2-04.png
gi2-01.png gi2-02.png
gi2-03.png

ちなみに、元々予定していたのですが、すべてRe:VIEWで記載して一式を以下のリポジトリで公開済みです。
上述の目次画像にも記載していますが、1節丸々落としており、後日アップデート予定です。

VRコンテンツのつくりかた
https://github.com/youten/howto-create-vr-contents
※vr-contents.pdfが本体です。

「プログラミング等は初心者ではないけどVRのコンテンツについてはあまり詳しくない」人向けの本を作成しようと考えていたはずなのですが、どうも出来上がってみると「VRについて頭に浮かんだことを垂れ流したうえにおまけのように作業記録が掲載されている」本になってしまった感です。いろいろちぐはぐですがよかったら手にとってやってください。

先日のエントリの通りはたらいてないので、日曜までにはもう一つ版を上げたいと思っています。
皆様にお会いできることを楽しみにしております!

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年11月27日

僕がVRデバイスをひたすら買っているわけ

突然ですが、youtenは「没入感」という単語が嫌いです。もう少し正確に言うと「没入感がある」「没入感がすごい」みたいな絶対的な表現で使われるケースが多いので嫌いです。比較の表現として「AよりBの方が没入感がある」という表現は好きです。これだと好きだの嫌いだのなんのこっちゃ?という話があると思いますが、例えば@GOROman氏の#Mikulusを見て「没入感がすごい」という感想をもった以下の二つのケースがあるとします。

Aさん:ハコスコなりCardboardなりスマホベースHMDのちょっとステッチングの微妙な360度動画を、それもspatial audioでもなくモノラルのやつをチラッと見たことがあるけどOculus Riftは知ってるだけ、PSVRはちょっと興味があるけど入荷待ちだという話を聞いてそのうち買おうかなぐらいの人がGTX1080環境なちゃんとVR ReadyのOculus Rift CV1で今のMikulusを見た感想の「没入感がすごい」

Bさん:DK1 backerでDK2も買って過去のMikulusは知っていて、主婦ゆには買ってるしMMD4MecanimなりでMikulusクローンを作ったことや作ろうとしたことがあってVR空間だとアニメキャラは頭身が違うのでサイズや視線調整で簡単にプレゼンスが剥がれて違和感が出ることに泣いた経験があってVR ReadyなPCは持っていてPSVRももちろん買ったしカスタムメイド3D2もサマーレッスンもやっていて自分の中に芯地がある人が今のMikulusを見た感想の「没入感がすごい」

この差が嫌いなのです。

僕は直感的に流行するものが分かるイノベータ側ではなくて、どちらかというと「信用に足るアーリーアドプターの行動を見つけて拾ってくる」ぐらいのアンテナの感度で世の中暮らしていますが、VRは間違いなく「iPhone並」に世界を変えると信じています。
「iPhone並」という表現についてもう少し補足しておきます。これを「スマホ並」と言わなかったのは、ぶっちゃけ日本ではiPhone3GS以前にすでにスマホが出てたからです。iPhoneはあの「直感的」という謎の単語で表現される、タッチパネルと液晶を組み合わせて指が動く範囲でUIが追従することによる入出力システムを世界の常識にしてしまったのです。
もっといろんな分類があると思いますが、「すでに一部では便利に利用されていたシステムが爆発的に普及する」イノベーションと、「完全に新しい概念が普及する」イノベーションの二種類があると思います。比較のために挙げると、ケータイ、写メ、スマホ、電子書籍、ウェアラブル、あたりが前者で、タッチインターフェイスを持ったiPhoneとVRが後者だと思っています。

VRじゃなくてMRだし、ARに最後に返ってくると言われてますが、確かに最終的にはどっちがどうなのかは概ね(その物理的特性が違うよという観点も含めて)「赤色と青色」ぐらいに収束するのはすでに見えてきています。

ちょっと以前に書いた文章をここで引用します。

Virtual Realityとは、直訳では「仮想の、事実上の現実感」です。実際に実物がそこにあるかのように人間に感じさせる技術を意味します。その技術体系は人間の五感に即して分類することができるものです。 日常的に普及しているイヤホンやヘッドホンによる立体感のあるステレオ音声も、あたかも目の前で実物が音を出しているRealityを実現した、聴覚に関するVR技術の一種であるといえます。

本章では主に、高スペック化の進んだスマートフォンデバイスによって、視覚に関するRealityをVirtualに実現するアプリについて取り扱います。
もう少し具体的にいうと、「首の向きに追従して、リアルタイムで絵が変わる」ことと、「左右の目に違う絵を表示することで立体的に見せる」ことです。

今のVRムーブメントは、この「首の向きに追従して、リアルタイムで絵が変わる」ことがそれはもうめっちゃ追従するようになって、「左右の目に違う絵を表示することで立体的に見せる」ことがそれはもうレンズとか表示側を歪めるとかめっちゃがんばって自然に立体的に見せる仕組みが(昔に比べて)ものすごくやりやすくなったことに起因すると思っています。(youtenはVR元年はまぁDK2の2014年かなぁ、と思っていますが、それから2,3年経って音声(聴覚)の方も需要があるぞ、と研究分野から業務用分野に降りてきた感があります)

今ARなりMRなりに若干広がりが見えるのは、もともとマーケティング目的としてリアルが絡むARの方が歴史的に何度も期待されていることもあると思いますが(よくわからんARのようなものとしてポケモンGOが俎上に上がったり)、Kinect v2・Leap Motionあたりから定着しだしたToFまわりの人間と外観の情報がリアルタイムに観測できることとを組み合わせて、Tango, Hololens, Magic Leapと具体的なデバイスが出ている動きを追って行けば「今後広がっていく」というより「すでに広がりつつある」という表現の方があっていると思います。

逆にちとつらそうなのはハプチですね。「触感」はつらそうですけど「風」と「温度」は物理的にやっちまえばいいのでそれなりのところで出てくるんではないですかね。僕は耳元に息を吹きかけられるデバイスぐらいなら今でもいけそうだとか思ってますが。

おっと完全に脱線しました。

で、何が言いたいかと申しますと、このVR、今までの言語事例では到底表現できないのです。普段から芸術的な表現をしてる方々ならともかく、相対的な情報理論を脳内に貯めていくことが生業の俺らにそんな向いてないことやるのはまさに効率が悪いってやつでしょう。テレビの無い世界でテレビについて伝えるのはとにかく難しかったと思います。

歴史に倣うと、テレビは店頭デモしましたので、VRも...店頭デモつらいですね(ちまちまと常設が増えていますが)。
ただし、今はインターネットがあります。「VRをやってる人が面白いのでそれをコンテンツにする」も良いと思います。グリーンバック合成は効果的です。CIRCLE of SAVIORSのVR JKでいいのです。
ゲーム実況文化もあります。VR画面をそのままストリームすると酔いやすいという話は、ローパスをかければ回避できるとのことで、きっとこれもすぐに標準装備になると思われます。

また、低レベルの体験から延長線上にある高レベルの体験をどう想像してもらうか、という観点では、うちの国にはSAOという最強のコンテキストコストバスターがいらっしゃいますのでお世話になればいいと思います。AR側も電脳コイルが追いつくのはまだかと待っていてくれています。

そんなわけで、実際にやるのが一番コスパフォがいいんですよ。やればやるほどプレイ動画を見て分かる様になりますし、ぐるっと一周回って一番最初の話の、AさんとBさんの発言の差が分かるようになってきます。「100つのコンテンツ体験を共有している人の言葉」はプレイ体験にかなり等しく伝わります。「ガルパンはいいぞ」ぐらいの伝わりです(つまるところ、全く伝わってないけどやる価値があるかどうかぐらいは伝わります、結局やらないとわからんね!)。昨今でいうと「Rez InfiniteのArea Xはいいぞ」あたりになると思います。

というわけで、(ここ2,3年のiPhoneの様に)差分に想像がつくとか、魅力的に感じなくなるまでは、VRデバイスを買い続ければいいじゃんと思っています。

Daydream Viewだけ先に来たけどhandtecで色選択のニ択に負けてPixel XLが届かないyoutenでした。BT-300とTouchとFOVEが冬休み中に遊べるといいな!

2016年10月16日

PSVRを買った

PS4Pro待ちだったけど、VR部屋に遊びに行ってみんなでキャイキャイしてたら我慢しきれなくなったので。

金曜日にちょっとつらいことがあって酒でも飲んでパッーとやるかぁ、と思ってたところ

というわけでPS4Proを待ちきれずにSlimを買ってしまった。N6P以来の、久しぶりに頭の悪い(計画性のない)買い物だがそれなりに満足している。

○PSVRそのもの:液晶の開口率が高く網目感がほぼ皆無、メガネ余裕のヘッドユニットマジすごい。伴ってシネマティックモードが文句無し、ミクさんもガルパンもラブライブも8時間○○尽くしもBDコンテンツが一回りランクアップする。

○ハイスト:Move2本があれば楽しいと思う。葉巻まわりのギミックが好き。
△Ocean Descent:デモとしては悪くない。サメはちっとも怖くない。
×シンゴジラ:ボリュームが足りない。なぜ撃ち落とされないのか...
△フューチャーライブ:アンコールだけ欠点が薄いので良い。ステージとサボりビルボード演出のダサさ、のっぺらライティングどうなってるんだミクさんなのにつらい。一応Diva民だしX HD買うかも。2ndと3rdは買わない。
○ビューイングレボリューション:こちらはアンフィ舞浜が良い感じで再現されててそれっぽく暗くなるのでライティングが良い。ただしモーションはデレステベースのおねシン、Starはちとふわふわ、新曲のYes!Party Time!!が頭一つ抜けて良い。衣装もめっちゃセクシーかわいい。みりあちゃんのジャンプと卯月の手ぐるぐる時の腰が最高。デレステ民は早くPSVR持ちのところに駆けつけるべき。10連ガチャより安い2500円を払うだけでタダになる。
○?サマーレッスン:JKにニフラムもらうゲームかと思ったが、意外と「ときメモ焼き直すとこうなのかな」ぐらいのVRゲームのつくりにフムフムと感心する予想外の方向で評価が高い。ひかりちゃんは首と胸元のセクシーさに比べて腰と脚の破壊力がちと足りない。電話でしか登場しない同僚が茅野愛衣なのだが、電話でしか登場しないが故にかやのん耳元でしか喋らないんだぞ。どうしてくれる。
△?RIGS:銃で打ち合うチーム戦オラタンかと思ってたけど色々ルールがある。まだキャラ・武器差を楽しめる余裕が無い。みんな言ってるがそれなりに横回しで酔うので15分(2ゲーム)以上は危険。訓練で超えられるところは見極めたい。
◎Rez∞:皆の言うとおり本当にVRで完成するゲームデザインだった。文句無く買いだけど、今後VRのことを語るのに「Rezのアレが」という言語になると思うので最高のArea4ボスが出てくる体験版だけでもやっといてほしい。AreaXはゲームとしては素敵だったけどVRとしては本家Areaで完成していたと思う。Area5の世界が生える演出とか何度も叫んだ。

○5万円とかの話

この話が妙にRTされてしまったので補足しておく。

本論に入る前に、トラッキングはどうもCamera設置位置が悪かった気配がある。正面以外にあまり強くないこと、OPTION長押しリセットを適度に使いこなす必要はあるけど、ゲーム性を損なうほど、ということはなさそう。
ただし完璧なViveとほぼルームスケールの安定感を持つCV1に比べるとDK2ぐらいかなぁ...とは思う。

サマーレッスンの描画解像度が低い話で概ね真実味が増しているが、PSVR 8万円 vs PC勢25万ではなく、Pro前提のMove2本込みで考えると現時点での価格比較は
PSVR カメラMove付き6万+PS4Pro5万
Vive 12万+PC9万
Rift Touch3万込み12万+PC9万
こうではないだろうか。

この10万差だが、ぶっちゃけソフトの価格・品質差でひっくり返る印象だ。年に10万円ソフトを買えない人はそもそもPSVRは我慢すべきだと思う。
メリケンなソフトはSteamの方が安くて良い。今更EVEをPS4でやりたくないし、PSVRですら日本はおま国だ。ThumperのVive対応を待っている。

現行BDソフトをいっぱい持ってたらPS4が勝つかもしれないが、現時点でUnityなりUEなりMMDなりPremiereやBlenderなど「作ってみたい」の人はVive一択だ。アダルト冒険家もPC側だ。

僕は幸い(?)作る側も楽しめるおっさんなので、嫁のために10連ガチャ連打とか、タクシーで帰る飲みの1, 2回の代わりにPS4Slimをつい買ってしまったり、RIGSで酔ったので休憩ついでにRezポチーとか、そういうのが(人生に対して)一番コスパフォが良いと思って楽しんでいるが、一通り試した感想としては「作る側が増えてほしい派としてはPSVRを値段観点だけで持ち上げるにはちと首をかしげる、この先に良いエコシステムサイクルはあまり見えない」という感想に至った。

RezがThe Lab級には良かったのはほんと助かった。PS4PROを待つモチベは残っている。

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年5月17日

ViveでSDユニティちゃんを無限に投げて掃いてみた

こりん(@k0rin)さんのフレームシンセシス Unity+HTC Vive開発メモに「また、SteamVR/Extrasに、コントローラでオブジェクトを投げるSteamVR_TestThrowというサンプルがあります。」と紹介されていたサンプルがおもしろかったので、RagdollなSDユニティちゃんをひたすら投げられるデモを作ってみました。

SDユニティちゃんのRagdoll化については以下のページを参考にしました。(というかそのまんまですね)

[Unity]SDユニティちゃんにラグドールを入れて人形っぽくする
http://notargs.com/blog/?p=588

Rigidbodyに直velocityではうまくいかなかったのでAddForce作戦に変えたあたりは以下のLeapmotionでつまんで投げる以下のページを参考にしました。

Grabbing and Throwing Small Objects, Ragdoll Style
http://blog.leapmotion.com/grabbing-and-throwing-small-objects-ragdoll-style/

RagdollThrower
https://github.com/leapmotion/RagdollThrower

GTX970機だと20体も出すと90fpsは保てなくなりますが、Timewarpまわりがきちんとしているのか、fpsが落ちても酔いを感じるほど画面が乱れるまでにはさらにもう20体、という感じの境界線でした。

2016年5月14日

Steam VR(Viveのホームアプリ)の全天球背景をローカルで追加する

Steam VR(HTC Viveのホームアプリ)の全天球背景は、Steam VRアプリのワークショップとしてアップロード公開・ダウンロード利用が可能です。

https://steamcommunity.com/app/250820/workshop/

workshop1.png

ベースステーションやコントローラのスキンもダウンロードの上、変更が可能ですが、全天球背景画像はローカルで追加することもできます。

Viveホームから設定→ヘッドセット内→デスクトップのフォルダを開く を選択します。

HMDをかぶったままだとなんのこっちゃ、という操作ですが、デスクトップ上で「Program Files (x86)\Steam\steamapps\common\SteamVR\resources\backgrounds」あたりのパスでエクスプローラが開いていると思います。

workshop2.png

ここに、2:1のEquirectangler画像とサムネイルを追加すると、Viveホームの背景として設定できるようになります。

THETA S等の撮影データであればそのまま放り込めばOKです。
CGも...ということで、MikuMikuDomeMasterでMMDから画像を出力して設定してみます。

※サムネイルの仕様は400x300ぽいですが、2:1画像が元なので400x200に縮小したものを_thumbnailというファイル名を追加して置いておくのが楽そうです。

ステレオ立体視空間内に無限遠ではないモノラルEquiを配置すると見た目は少し違和感があります、せっかくのViveで変な酔い方をするのもアレなので、大人しく遠景Equi画像を準備する方がよいかもしれません。

2016年5月12日

IO2016まで1週間待てばいい話だけどAndroidVRについて戯言

踊らにゃそんそんとは言うけれど。

続きを読む "IO2016まで1週間待てばいい話だけどAndroidVRについて戯言"

2016年5月10日

#JVRS の質問ハッシュタグが興味深かったので

勝手に妄想デマカセ回答してみる

続きを読む "#JVRS の質問ハッシュタグが興味深かったので"

2016年5月 9日

Oculus Rift CV1がうちにやってきた

Oculus Rift CV1を買ったのでチラ裏しておきます。とくに目新しい情報はないですが。

続きを読む "Oculus Rift CV1がうちにやってきた"

2016年4月25日

HTC Viveがうちにやってきて1週間

HTC Viveがうちにやってきたの続き。1週間経ったのでもう少し書く。

続きを読む "HTC Viveがうちにやってきて1週間"