Tutti Lab

元シリコンバレー在住のおっさん技術者、モバイルVRアプリ開発に挑戦中

2017-01-01から1年間の記事一覧

iPhoneでTensorflow Liteを試してみる

先日モバイル向けのTensorflowである、Tensorflow Liteがリリースされました。 Tensorflow Liteは、フル機能のTensorflowと異なり、iOS/Androidデバイスにて、学習済みのモデルを高速・高性能で動作させるための仕組みであり、学習や、任意のモデルの構築(M…

Zap Boxを試してみた

Kickstarterで話題になった「紙」によるモバイルMRデバイス「Zap Box」が来ました!ポジショントラッキングのためのマーカも、ハンドトラッキングのためのスティックもすべて紙でできています。この円形のマーカを部屋のあちこちに設置することで、モバイル…

ARCoreでポジショントラッキング

過去、Vuforia、Kudan、ARKitにてモバイルVR向けのポジショントラッキングを実現する方法を書いてきました。 今回は、先日Googleより発表されたARCoreを利用したポジショントラッキングを実現します。 ARCoreのインストール ARCoreを利用するためには、以下…

Windows Mixed Reality向けヘッドセットが来ました

こちらで予約受付がされていた(現状品切れ)Acer製のWindows Mixed Realityヘッドセットが、本日届きましたので、さっそく試してみました。 セットアップ ハードウェアのセットアップは非常にシンプルです。他のコンソール型のVRヘッドセットのようなたくさ…

MFT2017に出展したVRコンテンツ

今年もMaker Faire TokyoにVRコンテンツを出展しました。www.youtube.com へなちょこCooking Oculus Touchを活用したVR料理ゲーム(?)です。 食材をナイフでカットし、焼き色を付けて、皿に盛りつけます。 盛り付けが完成すると、AIがその料理に名前をつけ…

ラズパイZero WでMovidius NCSを動かす

前回は、苦戦しながらもラズパイ3にUbuntuをインストールし、Movidiusを動かしました。 今回は、ラズパイ3ではなく、より安価・小型(でも非力)なラズパイZero Wで、Movidiusを動かしてみます。なお、ラズパイZero Wはラズパイ2・3とARMアーキテクチャ…

ラズパイにUbuntu 16.04 LTSをインストールし、Movidius NCSを試す

話題のMovidius NCSを入手しました。非常に安価で、かつUSBポートに差すだけで、Deep Learningによる認識処理を高速に実行できる、ということで、 ラズパイにMovidius NCSを接続すると色々面白いことができそう。ラズパイでMovidius NCSについては、以下に手…

ARKitを利用してGoogle Cardboardでポジショントラッキング

過去、モバイル向けARエンジンであるVuforia・Kudanを利用したモバイルVRでのポジショントラッキングに挑戦してきました。 今回は、先のWWDCで発表されたAppleのARエンジンであるARKitを利用したポジショントラッキングに挑戦してみます。youtu.be UnityでAR…

Unity5.6.1f1でAndroidManifest-main.xml merging error

Unityを5.6.1f1にアップデートしたら、開発中のGearVR用のアプリが「AndroidManifest-main.xml merging error」でビルド不能に・・ AndroidManifestを書き換えよ、とのことですが、何のことやら・・こちらに解決方法がありました。 C:\Program Files\Unity\E…

Enabling or adding a Renderer during rendering

遅まきながらUnity5.6へアップデートしたのですが、Unity5.5で動作していたプログラムが動かなくなりました。 gameObject.SetActive()にて、"Enabling or adding a Renderer during rendering"というエラーが発生している模様。 原因は、gameObject.SetActiv…

陰影表示の際のOnBecameVisibleとOnBecameInvisibleについて

現在開発中のアプリで、OnBecameVisible(), OnBecameInvisible()にて、オブジェクトがカメラに映り込んでいるかどうかを判定し・・、という処理を作っていたのですが、どうにも思い通りに動かない。 明らかにカメラからオブジェクトが外れているにもかかわら…

KUDAN SDKを使って、Gear VRでどこでもドア(2)

前回は、Gear VRで「どこでもドアに近づく」体験を実現すべく、まずはマーカレスARが可能なKUDANをインストールしました。 今回は、KUDAN SDKを利用して、ポジショントラッキング機能を実装し、どこでもドアに近づいてみます。www.youtube.com Kudan Camera …

KUDAN SDKを使って、Gear VRでどこでもドア(1)

前回は、Unity Native VRでどこでもドア(ポータル)を実装しました。前回の予想どおり、前回開発したものをそのままGear VR向けにビルドしたところ、問題なく動作しました。 ただし、Gear VRにはポジショントラッキングがないため、どこでもドアに近づくこ…

どこでもドア(ポータル)をUnity NativeのVRで実現してみる

VRでどこでもドア体験、ぜひやってみたい!と思うのですが、関東在住ではないので、気軽に行けそうにありません。 www.doraeiga-vr.comそこで、Oculus Rift向けに作ってみようと思ったのですが、RenderTextureをごにょごにょして・・と色々考えたものの、ど…

シーン内GameObjectの初期化の順序などについて

シーン内GameObjectの初期化の順序について、私はごく最近まで「シーン内のGameObjectは入れ子構造の親から順に初期化、子はシーンの上にあるものから順に初期化」される、と勘違いしていました。 +GameObject1 | | | +---GameObject2 | +---GameObject3なら…

VR広告SDK「Immersv」を組み込んでみました

モバイルVRアプリ開発において「マネタイズ」は大きな課題です。一般的にモバイル向けアプリ(特に個人開発者)のマネタイズ手段は広告であり、各種提供されている広告SDKをアプリに組み込むことで、アプリ内で広告を表示し、実績に応じて広告収入を得る、と…

getterのケアレスミスでUnityクラッシュ

以下のコードですが、 private int _curNum; public int curNum { get { return curNum; } set { _curNum = value; } } 正しくは、「return _curNum;」としなければなりません。 なお、上記の間違いコードを実行すると、Unityがクラッシュします。 スタック…

Quadで円形プログレス

uGUIのImageは、fillAmountを使って簡単に円形のプログレスができるのですが、SpriteやQuadにはfillAmountに相当する機能がないようです。 こちらやこちらに、Quadを使った円形プログレスの実現方法があるのですが、予め0→360度でα値を1→0とした画像を…