第5回  スクラッチパッドへのデータ保存とダウンロードファイルの処理90Xi専用ゲームiアプリ開発講座(3/4 ページ)

» 2004年11月15日 22時22分 公開
[澤橋辰典・武上将樹,ITmedia]

os = Connector.openOutputStream(SP_POS + SP_IMAGE_DATA);
os.write(byteData);
os.close();

 これでイメージのサイズとデータがスクラッチパッドに保存されるので、以降は次のようにして画像を読み込んでいく。

MediaImage mi = MediaManager.getImage(SP_POS + SP_IMAGE_DATA);
mi.use();
img = mi.getImage();

 通信をするときもJAMファイルを変更する必要がある。これにはUseNetworkという項目に文字列"http"を記述する。

小さな画像の結合

 今回画像として32×32ピクセルの画像を72枚用意した。しかし、これらを個別にダウンロードしようとすると、各ファイルのヘッダなどで無駄にサイズが増え、さらに通信がファイルごとに接続・切断を繰り返すために、かなりの時間がかかることになる。そこで、今回は72個の画像ファイルを並べて、一枚の画像ファイルとしてダウンロードする方法を紹介する。

 ここから各画像を表示するときに、drawImageの部分描画版を使用すればいい。

Graphics.drawImage(Image image, //元画像
     int dx,//描画先X座標
     int dy,//描画先Y座標
     int sx,//画像参照X座標
     int sy,//画像参照Y座標
     int width,//画像参照幅
     int height); //画像参照高さ

ゲームアプリへの応用

 以上を踏まえた上で、今回の処理をゲームに応用してみよう。

http://www.apcon.jp/itmedia2004/05/Card.php

 今回のプロジェクトはここからダウンロードできる。今回はresフォルダをなくし、サーバにアップするためのremote_resフォルダを代わりに用意した。画像は木偶工房さんのものを使用させて頂いた。さらに、実際の端末でアプリを動かしてみたいという方のために、アプリをhttp://www.apcon.jp/itmedia2004/05/Card.phpからダウンロードできるようにしてある。アドレスを携帯端末に送信してダウンロードすると簡単だ。

※11月16日15時時点、スパイシーソフトのサーバメンテナンスのため、ダウンロードが一時的に行えなくなっておりましたが、16時に復旧しました。なおURLを変更させて頂きました。

 まず、起動してすぐにスクラッチパッドの先頭バイトを読み込む。

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2024年05月07日 更新
  1. 楽天ペイと楽天ポイントのキャンペーンまとめ【5月4日最新版】 1万ポイント還元や最大20%還元などの施策が充実 (2024年05月04日)
  2. 改札で困らないように モバイルSuicaで「オートチャージ」を設定する方法 (2024年05月06日)
  3. 4万円台からの「Nothing Phone (2a)」は誰向けか Phone (2)との比較で分かったこと (2024年05月05日)
  4. 皆さんは「スマホにガラスコーティング」してますか? 私はしていません (2024年05月04日)
  5. ガストやバーミヤンの「テーブル決済サービス」、楽天ペイも利用可能に レジへ行かずに卓上会計 (2024年05月05日)
  6. 楽天モバイルがeSIMの不正乗っ取りについて注意喚起――安心安全に使えるeSIM環境を業界を挙げて取り組むべき (2024年05月05日)
  7. ダイソーで110円の「ガラスコーティング液」は本当に使える? 試してみた結果 (2024年04月29日)
  8. Evernoteからの乗り換えでオススメのメモアプリ5選 無料で使うならどれがいい? (2024年02月13日)
  9. GWのUターンラッシュでスマホを活用する技 道路の渋滞情報と、電車の混雑状況を確認しやすいアプリはどれ? (2024年05月05日)
  10. 最新デジアナ文具でスケジュールも手書きしてアップ!? サラサラ書き心地の良いゲルインキタイプも登場──NeoLAB「Neo smartpen A1」 (2024年05月04日)
最新トピックスPR

過去記事カレンダー

2024年