iモード携帯電話用Java(iアプリ) Part 7
>944
地獄を見るほど複雑とも思えないのだが、何を懸念してるんだ?
RGBで明度が違うから単純にマスクしちゃだめ
>>945 作ってるアプリは商用? それとも趣味?
どこかに納品するものならやめておいた方が良いと思うよ。
DoJa4.0でgetColorOfRGBの仕様が拡張された例もあるし、
自前で内部解析しても将来端末で動く保証が何も無い。
後々まで対応迫られるのも嫌だからね。
ってこのあたりはクライアントによりけりか。
老婆心だった。すまん。
>>936 Poly描くとき画面端1ラインおかしいの直ってる?
>>943 アプリ開始時に
Graphics g;
int r_table=new int[256*256*256];
int g_table=new int[256*256*256];
int b_table=new int[256*256*256];
for (r=0; r<256; r++) {
for (g=0; g<256; g++) {
for (b=0; b<256; b++) {
g.setPixel(0,0,Graphics.getColorOfRGB(r,g,b));
i=g.getPixel(0,0)
r_table[i]=r; g_table[i]=g; b_table[i]=b:
}
}
}
とか考えてみた。改良したら使い物になるかもしれん。
>>943 つうか、PalettedeImageなんかGIFから読み込むぐらいにしか使わないから、
GIFからパレットデータ抜き出して操作するぐらいで足りないの?
全体的に光らせたり、
キャラを暗い状態からだんだん明るくしたり
と細かい数式的な動作をさせたいのです。
パレットそのものを持つと、1*1の面積をもつ16色GIFですら77バイトもかかってしまふ
☆ チン マチクタビレタ〜
マチクタビレタ〜
☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < 次スレまだ〜?
\_/⊂ ⊂_ ) \_____________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| 愛媛みかん |/
>>951 PalettedeImageってパレット替えが遅くないか?
>>953 いや、かなり早い。が、また問題発覚。
D900iが、どんな色数のGIFを読ませても
getEntryCount で256返してきやがるorz もう最悪やこの機種
ああ、ごめん。それは流石に勘違いだった<必ず256
死ぬかと思ったorz
そろそろ日記帳状態になってきたから、次スレあたりで続きをまとめて報告するよ。
ノシ
質問です。
アプリのバックライトを常にONにしておくにはどうしたらいいのでしょうか?
PhoneSystem.setAttribute(PhoneSystem.DEV_BACKLIGHT, PhoneSystem.ATTR_BACKLIGHT_ON);
を最初にやっても、しばらくすると暗くなってしまいます。
暗くなったら上の命令を。とすると、一瞬だけ暗くなるため画面がちらついてしまいます。
ご教授よろしくお願いいたします。
ネイティヴからのバックライトの制御(操作でON・一定時間でOFF)は
アプリ側からはどうしようもない
>>956 ネイティブの「iアプリ設定」の画面を開いて
バックライトの制御を「システム優先」から「ソフト優先」
にすれば制御できた記憶が。
試してみました。
ネイティブの設定で「ソフトの設定に従う」にしてあれば、
一度setAttributeするだけで永続するようです。
設定になっていない場合は、断続的にsetAttributeするしかなさそうですね。
>>959 ついでに、レジュームがかかると再度設定する必要がある。
>>954 やたら遅かった記憶があるんだが、FF1の戦闘画面みたいに絵が大きくなければ
実用的な速度で動くのかな?
64*64くらいの画像を、パレット変更しながら描画したけどあまり気にならず。
だが、D900はやはり遅い。
D900i
F900i
N900i
SH900i
P900i
の順番で遅かった。減色具合をリアルタイムに計算させてたのもあるが、
Dはパレット計算&セットだけで25msくらいとった。っておーい。すげー遅いじゃん(;´Д`)
絵の大きさは多分関係ないと思うぞ。パレットなんだし。
>>962 パレットがハードウェアで実装されてないんじゃないのか?
ソフトウェアエミュレーションで遅くなってる
ああ、ちなみに。
エミュとD900はRGBそれぞれ8bit
それ以外の900は565の16bitでした。
またDだけか!
>>964 Dで画像のサイズ変えて同じようにパレット操作して
処理にかかる時間が画像サイズに比例するか調べてみた?
俺の記憶ではパレット操作はSH以外使い物にならんほど遅かった気がするが…
PよりSHのほうが速いだろ。
>>965-967 あくまで自分のゲーム用に実験しただけなので、場合によってはスピード逆転とかは十分あると思いますよ
パレット操作はともかく、PalletedImageの方が描画遅いよね。倍ぐらい。
>>969 機種によりました。
P900iはどっちでもスピード(ほとんど?)変わらず。
Dは顕著に遅くなる。他はまぁちびっと。
でも基本はPlettedImageの方が遅いと考えていいと思います。
すいません、教えてください。
アプリをダウンロードする時に、指定するjamファイルをPHPにして、
そのPHPがjamファイルを表示してダウンする事はできますでしょうか?
今、PHPにjamをそのまんま表示させてるんですが、ソフトに誤りがありますと言われます。
但し、その表示されてるもんをjamファイルに貼って正規のやり方で落とすと
落とせます。
ご存知のかたいらっしゃいましたら宜しくお願いいたします。
>>971 HTTPヘッダとかマンドクサイことになりそうだから
素直にperlで吐いたほうがいいと思う。
すくなくともperlのCGIでjam吐かせたら問題なくダウンできたよ。
>>972 レスどうもです。
なんか適当にやってたら1回だけ出来たんです。
それがものすごく単純なコ−ドで。
へぇこんなんで出来るんだって感じでした。
ところがどっこい、ソースをいじって遊んでたら、どうやるか
わからなくなってしまいました(T_T)
激しく後悔。。。
974 :
デフォルトの名無しさん:05/03/16 00:59:27
人間は追い詰められると幻覚が見えてくる動物です
>>971 >jamファイルをPHPにして、
ここの意味が分からん
PHPでjamファイルを作成してそこへのリンクを表示させたいってこと?
何が言いたいか分からん上にスレ違いくさい
PHPでjamファイルを出力するって意味でわ?
>971氏は文章を整理して質問し直すべし。
>975>976のやり取りを見れば前半ですら意味が伝わってないことが分かるでしょ?
後半も「PHPにjamをそのまんま表示させてるんですが」や「その表示されてるもんを
jamファイルに貼って正規のやり方で落とすと」とか独自の表現が多くて意味不明。
質問するなら人に伝わるように書かないと期待する回答は得られないよ。
978 :
デフォルトの名無しさん:05/03/16 08:14:36
PHPでjamファイルを出力するって意味でわ?
そうは読めないねぇ
用語が支離滅裂なんで電波系の人だと思った
つーか、ちゃんと寝なさい
>>971 翻訳するとこんなん↓かしら?
>教えてください。
>アプリをダウンロードする時にJAMファイルの替わりに、
>PHPでJAMファイルの内容を出力させてもダウンできるで
>しょうか。
>
>試してみたら「ソフトに誤りがあります」と言われて
>ダウンロードできませんでした。PHPで出力するテキストを
>JAMファイルに保存してみたら、ダウンロードできました。
引っ掛かりそうなことを順番に上げると、
・文字セット(SHIFT_JISとかEUCとか)
・改行コード
・Content Type
くらいかな。
翻訳ありがとうございます。
やりたいことは、
<object declare id="application" data="jam.php?id=999" type="application/x-jam">
↑です。
文字セットはSJISで出力して、改行コードは\r\n
Content-Typeはapplication/x-jamとtext/plain
で試しましたが旨くいきませんでした。
覚えてはないのですが、適当にやって一度だけ上手くいったので
その後ソースをいじってしまい非常に後悔しております。
>>981 jam.php?id=999
をブラウザで開いて、元のJAMファイルと
バイナリレベルで違いを比べれば分かりそうだけど。
すんません。できました。
指定した位置にjarがなかったのが原因でした。。。
一応、PHP側のソース載せときます。
<?php
$ref = $_GET['ref'];//ファイル名
$array = file("${ref}");//SJISで保存されたJAMを読み込む。
for($i=0;$i<count($array);$i++)
{
//paramとかネットワーク系の情報を変更したかったらeregiでもしましょう。
print "$array[$i]";
}
?>
終始電波で申し訳ございませんでした。m(_ _)m
>>982 レスありがとうございます。
もう解決しましたが、ブラウザでアクセスすると
きちっと表示されてたんです。
なのに何故?と思っていたら、jarがありませんでした。
お手数かけました。ごめんなさい。
パネルクラスでIApplication型の変数を使ってgetSourthURL関数を呼ぶとエラーになるのですがなぜでしょう?
ソース的には以下のような感じです。
class A extends Panel {
IApplication IApp;
String URL=IApp.getSourthURL()+"xxx.cgi";
}
エラーって一言で言われてもねぇ…
getSourceURL()じゃねえの
>>987 あー間違えました。
985のソースのgetSourthURL()の部分はgetSourceURL()です。
>>981 data="jam.php?id=999"
ってとこみると、jam.phpというファイル名だと思うけど、
"xxx.jam"みたいな名前にして
.htaccessでサフィックスjamをserver parsedに設定しといたほうが
より安心できないか?
>>985 IAppが空じゃん
IApplication IApp = IApplication.getCurrentApp();
String URL = IApp.getSourceURL()+"xxx.cgi";
>>990 ありがとうございます。
getCurrentAppしないと駄目なんですね。
でも何故かgetCurrentAppをしていなくても
エミュレーターや一部の実機では動いたりしました。
なんで動いたんだろう??
くそー
Invalid constant pool entry 吐きやがった
double や float などを使ってたり、クラスが壊れてたりしたら出るってどこかに書いてあったが
doubleとか使ってないし、何度もビルドしてるからクラスが壊れてることもないと思うんだが……
double float 以外に、Invalid constant pool entry を吐く変数型とかってある?
とりあえずググれ
きちんと対処法と、まず試してみるべき行動がきちんとひっかかるじゃないか。