ブログランキング・にほんブログ村へ


iPhone/iPad用潜水艦ゲームアプリ ソナーエコー iTunesにて公開中

2016年11月18日

[iOS]ソナーエコー 1.2.0 審査提出

ソナーエコーの1.2.0がやっと出来たので審査に出した。なんとか年内に出したかったんだよね。
アメリカの人、12月のおやすみ長いから。
いつも半年ぶりとかなんで、そのたんびにiTunes connectが変わってて対応にとまどう。
スクショあげるのが簡単になってるとは聞いてたけど、これはほんとに楽になってた。
ビデオが、プライマリのところにしかあげられないのはちょっとビビった。もともとApp PreviewビデオはLocalizationに対応してなかったので仕様は変わってないんだけど、静止画像のほうが整理された結果、取り残されてわかりにくさが際立ってる感じ。
あと、すっげー表示とか遅くなってないですかね。結構ストレス溜まる。

今回はMetalで全面的にシェーダ関係を書き直し、デバイスの力と自分の技術が許す限りデティールの再現につとめてみた。
ステージも3つ追加。

審査の期間って今みてきたら1.2日とかになってるんだけど?何があったんだろうこわい…

sc0_55e.png
タグ:iOS
posted by みこあいさ at 12:28| iOS開発

[iOS]Apps that have 'arm64' in the list of UIRequiredDeviceCapabilities in Info.plist must only contain the arm64 slice.

ソナーエコーの1.2.0がやっと準備できたのでiTunes connectにあげようと。
そしたらOrganaizerのVeridationでこんなエラー。
iTunes Store operation failed.
Invalid Bundle. Apps that have 'arm64' in the list of UIRequiredDeviceCapabilities in Info.plist must only contain the arm64 slice.

info.plistのRequiredDeviceCapabilitiesに確かにarm64と書いた。
64ビットコードだけにしろ、と言ってるわけだ。たぶん。
そりゃぜひともそうしたいんだけど、なんか前、うまくいかなったんだよねーと思いつつ、どうしようもないので色々試す。

RequiredDeviceCapabilities
に書いてあった armv7を外す。そりゃいらないよね。

BuildSettingsの
VALID_ARCHS

arm64だけにする。
そして同じくBuildSettingsの
ARCHS
がStandardになってるけど、これを削除して
arm64
だけにする。
これで通った。以前ARCHSをarm64にしたときはうまくいかなったような気がしたんだけど…まあいいか。

で、32bitsコードなくすといったいどんくらい小さくなったの?というのでOrganaizerで見てみる。
(Organaizerで今まで作ったパッケージのところを右クリック→Show in Finderで見られる)

45.5MB -> 38.5MBで7MB、dSYMのサイズは入れないみたいなんで、パッケージの中のdSYMのサイズをみてみると差は3,4MBくらい。そうすると差は3,4MBくらいということになる。たったそんだけ?とびっくりした。
posted by みこあいさ at 12:22| iOS開発

2016年10月13日

[iOS][Metal]Execution of the command buffer was aborted due to an error during execution.Caused GPU Hang Error (IOAF code 3)

OpenGLES -> Metalの移植もいよいよ大詰め…となっていきなりこんなエラーに遭遇。
環境は iOS10.0.2 iPhone SE。

Execution of the command buffer was aborted due to an error during execution. Caused GPU Hang Error (IOAF code 3)

Execution of the command buffer was aborted due to an error during execution.

MTLCommandBufferがなんかしらの内部エラーを出してるらしいが、なにせ情報がほとんどない。
UIKitと衝突する?と出ることがあるとかいう感じの記述をみつけてそれらしいところを外してみるが効果なし。
不思議なのは描画関係何も変えてないはずなのにいきなり出るようになったこと。


----解決。

更新開発中のゲーム(ソナーエコー)で、ステージ制なのに新ステージのみで出て他のステージで出ないことから調べていったところ、テクスチャのロードをミスして出来てなかったこと(0となっていた)がわかった。
エンコーダのテクスチャの設定をsetFragmentTextureしないまま実行すると、パラメータがセットされないというエラーが出るのに0をセットするとこういうエラーとなるらしい。
不親切で気づかないと相当はまるので気をつけたい。
タグ:iOS metal
posted by みこあいさ at 12:31| iOS開発