夏までにiPhone アプリつくってみっか!

趣味でiPhone/Androidアプリを開発し、日々勉強した事を書いています。オープンワールド系レースゲームをUnityで開発中です。

iOSシミュレーターのカメラロール内の画像ファイルのありか

スペハリ風のチェッカー模様の地面の元になる画像はペイントソフトはなくiPhone用プログラムで生成しています。
(参照:
【スペースハリアー】Core Graphicsでシマシマの地面を描いてみた - 夏までにiPhone アプリつくってみっか!
【スペースハリアー】UIImageをカメラロールに保存してみた - 夏までにiPhone アプリつくってみっか!

生成した画像ファイルはiPhoneのカメラロールに保存するようにしているので、iCloudで同期するなりメールで送るなりできるのですが、この画像データをiPhoneで生成すると気が遠くなるほどの時間が掛かります。

f:id:takujidev:20131108184310p:plain

このように、画像自体は非常にシンプルな縞模様なのですが、実は細い線を9万6千本並べるという非常に効率の悪い方法で生成されています。しかも、水平に近い角度の線は無駄に何万ピクセルもの長さになっています。

これをiPhone4Sで実行すると約10分掛かります。
ゲームでは2枚の画像が必要なので、あたらしい色の組み合わせを試すのに毎回20分ぼーっと待たされる計算です。

これは堪え難いので、iOSシミュレーターで実行して作成する作戦を考えました。この場合は高速なMacのCPUが使われるので約30秒で1枚作成できます。これなら十分に許容範囲と言えます。

早速iOSシミュレーターで作成してカメラロールに画像が保存されていることは確認できたのですが、これをどうやってシミュレーターの外からアクセスしようかと悩んでしまいました。

ググってみたところ、どうやらライブラリフォルダーの下にあるようです。

まず、ライブラリフォルダーにアクセスするには、Finderのメニューバーの「移動」メニューを開いた状態でoptionキーを押します。
すると、プルダウンメニューの中に「ライブラリ」という隠し項目が出現するので、それを開きます。

次に、Application Support → iPhone Simulator とたどって行きます。
そこには「7.0」、「7.0.3」というようにシミュレーターのバージョン毎にフォルダーが分かれているので該当する物を選び、そこからMedia → DCIM → 100APPLEとたどると、カメラロールにおさめられているファイルが見つかります。
https://itunes.apple.com/jp/app/travelshooting-jp-toraberushutingu/id917570972?mt=8&uo=4&at=10laCt
https://itunes.apple.com/jp/app/beecluster-wu-liaono-zongsukurorushutingugemu/id663801586?mt=8&uo=4&at=10laCt