第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

2026年07月21日 更新
  1. ダイソーで330円の「人感・明暗センサーLEDバーライト(Type-C)」が意外と便利 1人暮らしの帰宅時や非常灯に便利  (2026年07月18日)
  2. なぜ「060」携帯番号は18カ月あっても延期になったのか? それでも「慌てる必要はない」現状 (2026年07月20日)
  3. 専用充電器はもう不要? 中韓スマホから国内勢まで巻き込む「USB PPS」急速充電の新常識 (2026年07月14日)
  4. 「Pixel 11」は何が変わる? メモリ減少で100ドル前後の値上げも? 出そろったうわさを整理する (2026年07月19日)
  5. JR東日本「分かりにくい」新幹線券売機を改善へ なぜ、スマホではなく「駅での最短1分購入」を実現? (2026年07月04日)
  6. ショップとAIで差別化を図る「ドコモの銀行」――住信SBIネット銀行ユーザーからは戸惑いも (2026年07月19日)
  7. 携帯番号に「060」が採用されるワケ 「電話番号とは何か」を歴史とともに振り返る (2024年10月09日)
  8. iPhoneやApple Watch一斉値上げ 17無印は14万2800円に、17eは10万円超え 加速する中古スマホ特需 (2026年07月18日)
  9. “特典終了”が続く「d払い」「dポイント」のお得さはどう変わるのか これからは「dカード」の利用が得策? (2026年07月17日)
  10. ミドルハイレンジモデルにも水冷搭載 nubiaから「Neo 5 GT Special Edition」登場 (2026年07月19日)
最新トピックスPR

過去記事カレンダー