2014年10月16日木曜日

ARFantasy制作過程104

ARシナリオ終了時にフリーズするため
ARシナリオ終了直前に各リソースを明示的にアンロードして
何がアンロードされるときにフリーズするかを確かめたところ
ビデオテクスチャであると判明
とりあえずいくつかのビデオテクスチャの使用をやめたらフリーズしなくなった

なぜビデオテクスチャのアンロードでフリーズするかはどうもはっきりしない
とりあえずフリーズを引き起こすビデオテクスチャの使用は取りやめて
全章大幅作り直しの方針に変更
最低でも一月はかかる予定

人気ブログランキングへ
にほんブログ村 デザインブログランキング

2014年10月12日日曜日

ARFantasy制作過程103

やや進展あり(と思ったらやっぱりフリーズした2014/10/13/00:09追記)
階層構造のある3Dオブジェクトをアンロードする際に変な順番でアンロードしているのが原因
っぽい気がしたので
ObjectiveC側からARシナリオをターミネイトする前に
LUAの方で明示的に3Dオブジェクトを削除した
そして削除後に15秒ほど待ってからARシナリオをターミネイトした
そしたら大部分のパターンのフリーズは起こらなくなった
それとアンロードする前にトラッキングのループを停止した(これは必要かは不明)

人気ブログランキングへ
にほんブログ村 デザインブログランキング

2014年10月10日金曜日

ARFantasy制作過程102

困った
ARFantasyの各章を念入りにデバッグし
ほぼバグは出なくなり完成したと思った
そこでiOS8へのアップデートを忘れていたので
iOS8にアップデートしたら
謎のバグでARシナリオ終了時に時折フリーズするようになってしまった
しかも全13章すべてで同様の問題が発生

過去にリリースしたアプリは問題なく動く
違いは何かというと若干サイズが違う
iOS8にしてからFPSが若干上がったように見える
そのせいでメモリが足りなくなっているのか?
と思って過去のアプリARSFのサイズを大きくし試してみたが特に問題なし
ARFantasyのアセットをダミーに差し替えてみたら問題が起こることは確認できなくなった
よってサイズの問題ではないがアセットの問題の可能性がある

リソースのアンロードの際にフリーズしている模様
節約のためにテクスチャを複数のマテリアルで使いまわしていたが
その影響かと思い使いまわしをやめてみたが
若干フリーズしにくくなったものの色々ゲームを進めてから終了するとフリーズ

シナリオをターミネイトする前に各オブジェクトをデリートしてみたら
フリーズしにくくはなったものの
すべての3Dオブジェクトを一回表示してから終了しようとしたらフリーズした

魔法、武器、防具、アイテム、モンスター、町、買い物といった
各部分の組み合わせを実行しフリーズするパターンを決定しようとしたが
確率的なのかどうも発生条件が不明


人気ブログランキングへ
にほんブログ村 デザインブログランキング