Nanashi-soft

Nanashi-softの活動状況とか雑談です。 Unity3Dでゲーム作っています。

なぜか,ほとんど一発で審査が通ってしまったので(審査落ちしましたネタにするつもりだったw)
カップメンクイのiOS版が配布されました

Appストアで『カップメンクイ』や『かっぷめんくい』で検索すると出てきます

↓直リンクはココです。
iOS 9.0以降の iPhone,iPad,iPod Touchで動きます


ここは開発ブログなので,カメラアプリの審査時の注意点を書いておきます

○カメラ使用許諾のダイアログに,正しい理由が書かれていなければいけない
具体的に言うと,Unity設定の話です

Unityのメニュー→Edit→Project Settings→Playerを開いて
Camera Usage Descriptionのところにカメラを使う理由をきちんと書く
ちなみに,日本語のみでも通りました。何と書いたかは各自カップメンクイをダウンロードして確認して下さい('-'*)

○カメラで使用する画像が必要
読み込ませるバーコード画像を用意する必要がありました
アメリカに日本のカップ麺は無いだろうしw
審査提出時に,添付しておく欄があります(ログイン情報などを書く下にね)

色々と使い勝手の悪い所を修正しました

バーコードやタイマーを入力する時に,数値モードにいちいち切り替えるのが面倒臭かったのですが
インプットボックスの Inspector→Input Field (Script)→Content Typeを Decimal Numberにすれば数値入力パッド表示になりました

バーコード読み込みを起動させると,キャンセル事ができない問題の対処をしました
全体にパネルをかぶせて,そこを2回タッチするとキャンセルされます
1回だけだと,ボタン押した時にうっかりもう1回触れていて,バーコードリーダー起動しねぇ! 状態に自分が鳴ったので,2回にしましたw

あと 50ぐらいのカップ麺データを追加しました


Playストアで『カップメンクイ』や『カップめん』とかで検索すると出てきます

↓直リンクはココです。PCでもページ自体は見れます(PC版は作っていないので)

ただ VR用ゲームを作る! と言うだけの話であれば,もう何年も前に他の人がやってるので,そっちを見た方が早いです('-'*)
今回,制作中のゲームを Goに対応した時のメモがこれです

Unity 2017.4.2f2での話です
バージョンによって,表記が XRでは無く VRだったりするみたいです

●ビルドを VR対応に設定する
1.メニューの Edit→Project Settings→Playerを選択
Inspectorの タブを Settings for Androidにする(というか,ビルドのPlatformがAndroidね)
XR Settingsを選択
2.Virtual Reality Supportedにチェックを入れる
3.右下の+をクリックして,Oculusを追加する
ここに Noneも追加すると,VRボタンなどを実装してそれを押すと VRモードになる。という対応もできるそうです

○その他の Oculus Go用設定
Other Settingsを選択

・Rendering
Color Space:Linear (の方がいいらしいです)
Auto Graphics APIのチェックを外して,OpenGLES3だけに設定する(Vulkanはまだ検証していません)
Require ES3.1:入れる(GoのGPUはGLES3.2対応だから)
Require ES3.1+AEP:入れる(同上)
Multithreaded Rendering:必ず外す(やってみたら動かなかった)
Static Batching:入れる
Dynamic Batching:入れる
GPU Skinning:入れる(VR用の設定です)
Graphics Job (Experimental):入れる
Protect Graphics Memory:外す(この設定の意味わからんから)

・Identification
Minimum API Level:Android 4.4 'Kit Kat' (API level 19) (これ以降に設定しろと警告が出たから)
Target API Level:Auto

・Configuration
特に問題が無いのであれば,.NET 4.6に設定した方が良いです
Device Filter:ARMv7 (x86機でもこれで動いていたので)

●クオリティを Forwardの MSAAをオンに設定する
Goはそうした方が良いらしいです

・MSAA(アンチエイリアシング)をオンにする設定
メニューの Editor→Project Settings→Quality
※Add Quality Levelで,StandaloneVRなどを追加して,専用設定を作る方が良いかと思います
Anti Aliasing:2x Multi Sampling

余談ですが,VSyncはオフにした方が首を動かした時の追従がスムーズなようでした。絶対常時60fps(72fps)に自信がある人以外はオフにした方が良いでしょう

・カメラの MSAAをオンにする
シーン上のカメラ設定で,Allow MSAAにチェックを入れる

●レンダーモードを Forwardに設定する
シーン上のカメラ設定で,Rendering Pathを Forwardに設定する


この設定で VR対応になったはずです


●ビルドしてインストールする
普通にメニュー File→Build Settingsで Build Settings画面を開いて,Buildボタンを押すだけ

Dosコマンドでインストール
adb install -r test.apk

コンソールログも見ることができます
adb logcat

○VR上で起動
Goを装着して,左下のライブラリでトリガーを引く
左上のマイアプリの下にある提供元不明でトリガーを引く
正面の1/9と表示されている左のボタンでトリガーを引いて,最終ページを表示
そこにインストールしたアプリがあるはずです

○アプリ終了
ホームボタンを押して,停止でトリガーを引く

○アプリがフリーズした
電源ボタンを長押しするとリセットできます

○音がうるさい
電源ボタンの左にあるのが音量ボタンです

私が他のハードで知りたいやつだから,Go実機で取得した値を貼っておく

operatingSystem : Android OS 7.1.2 / API-25 (N2G48H/271300090200004)
processorType : ARMv7 VFPv3 NEON
processorCount : 4
systemMemorySize : 2771
graphicsMemorySize : 1024
graphicsDeviceName : Adreno (TM) 530
graphicsDeviceVendor : Qualcomm
graphicsDeviceID : 0
graphicsDeviceVendorID : 0
graphicsDeviceVersion : OpenGL ES 3.2 V@283.0 (GIT@e86a0cc, I83a540a04a) (Date:12/21/17)
graphicsShaderLevel : 50
graphicsPixelFillrate : -1
supportsShadows : True
supportsRenderTextures : True
supportsImageEffects : True
deviceUniqueIdentifier : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
deviceModel : Oculus Pacific
maxTextureSize : 16384
Now display : 2560 x 1440 @ 72Hz
Screen Width : 2560
Screen Height : 1440
Screen.dpi : 480

*2018/05現在の最新ファームウェアにて
*SystemInfo.このプロパティね
*deviceUniqueIdentifierはこれだけのケタ数があるという参考

アプリ開発では,adbコマンドによって PCから apkファイルを書き込むわけですが
その為には,機器を PCに認識させる必要があります
※既に AndroidSDKとかはインストール済で,スマフォ向けに開発している事が前提の話です。そうで無い人はそこから始める必要があります

公式でドライバが配布されています
○Oculus Go ADB Drivers | Developer Center | Oculus

まず,これが exeでも msiでも無いので,インストール方法がわからない人がいると思うので書いておくと
1.ダウンロードしたzipファイルを適当な場所に解凍しておく
2.Occulus Goと PCを USBケーブルで接続する
3.スタートボタンを右クリック→デバイスマネージャ
ポータブルデバイスの下に,それっぽい機器の名称があるのが Goのはず(確証が持てなければ1回ケーブルを抜いてみて消えたら正解)
4.それをダブルクリックして,上のドライバタブ→ドライバーの更新ボタン
5.下側のコンピューターを参照してドライバーソフトウェアを検索をクリック
6.参照ボタンをクリックして,ダウンロードしたドライバを解凍した場所を選択(一番上のusb_driverフォルダね)
7.次へボタンでインストールする

正常な PCだと,これで adbコマンドが使用可能になります
Cygwinや Dos窓から,adb devicesコマンドを実行すればデバイスが表示されるはずです

×ノートPCなど,特殊な環境の PCの場合は,公式ドライバでは認識されない場合があります
うちの VAIO Zはいっつもそうです(>_<)"
その場合の対処方法が,この記事の主旨です

まずは,インストールしてしまった公式ドライバを削除します
1.スタートボタンを右クリック→デバイスマネージャ
Oculus VR Devicesの下にある Goをダブルクリック
2.上のドライバタブをクリック→デバイスのアンインストールボタン
3.アンインストールする

infファイルを作成します
1.Android SDKフォルダの下にある
extras/google/usb_driver/android_winusb.infを開く
※無い場合は,SDK Managerから Extrasの下の Google USB Driverをインストールする
2.[Google.NTamd64]セクションに以下のテキストを追加する
;Oculus Go
%SingleAdbInterface%        = USB_Install, USB\VID_2833&PID_0083&REV_0318
%CompositeAdbInterface%     = USB_Install, USB\VID_2833&PID_0083
※Win10(64bit版)の場合,そうで無い場合は各自ハードウェアIDを確認のこと
3.スタートボタンを右クリック→デバイスマネージャ
ポータブルデバイスの下に,それっぽい機器の名称があるのが Goのはず
4.それをダブルクリックして,上のドライバタブ→ドライバーの更新ボタン
5.下側のコンピューターを参照してドライバーソフトウェアを検索をクリック
6.参照ボタンをクリックして,Android SDKの場所を選択
7.次へボタンでインストールする

これで,adb devicesコマンドで機器が表示されるようになりました(私のノーパソでは)

apkのインストールもこれでできます
adb install -r test.apk

ログも見れます
adb logcat

続きを読む

↑このページのトップヘ