1 名前:デフォルトの名無しさん [05/02/19 11:51:16 ] J2ME CLDC+MIDPベースの携帯電話用Java(主にEZアプリ、Vアプリ)に関するスレッドです。 質問でも議論でも何でもこい、と。 前スレ: CLDC+MIDP+携帯電話用Javaスレッド part 3 pc5.2ch.net/test/read.cgi/tech/1091798483/ 過去スレ 携帯JAVAのスレッド pc2.2ch.net/test/read.cgi/tech/1011977260/ (DAT落ち) CLDC+MIDP+携帯電話用Javaスレッド part 2 pc5.2ch.net/test/read.cgi/tech/1070858996/ -- Java一般に関しては: 【初心者】Java質問・相談スレ51【大歓迎】 pc5.2ch.net/test/read.cgi/tech/1091770298/ NTT DoCoMoのiモード携帯電話用Java(iアプリ)については: iモード携帯電話用Java(iアプリ) Part 6 pc5.2ch.net/test/read.cgi/tech/1091286071/ >>2-5 あたりにリンク集
445 名前:デフォルトの名無しさん mailto:sage [2005/06/02(木) 18:12:41 ] >>444 MIDP2.0なら Graphics#drawRegion() MIDP1.0なら Graphics#clipRect(), Graphics#translate(), Graphics#drawImage()の合わせ技で
446 名前:デフォルトの名無しさん mailto:sage [2005/06/02(木) 22:13:55 ] >>444 auのPhase3、vodafoneのP5なら拡張GraphicsにdrawRegion()があるよ
447 名前:デフォルトの名無しさん mailto:sage [2005/06/03(金) 10:51:07 ] レスありがとうございます。 >>445 MIDP1.0で作ってるのですが、結構面倒臭いですね。 関数化しちゃえばドコモと同じですが。 >>446 APIを調べていてvodafoneは見つかったのですが、 auの方が見当たりません。auの方にもあるのでしょうか? 見逃してるだけだったらごめんなさい・・・。 できるだけ処理を早くしたいのですが、2つの内どちらの方が処理が早いのでしょう? あと忘れていましたが、auのPhase3対応で作ってます。
448 名前:デフォルトの名無しさん mailto:sage [2005/06/04(土) 00:16:08 ] txtファイルをリソースに含めて、その文字列を読み込むにはどうしたらいいんでしょうか?
449 名前:448 mailto:sage [2005/06/04(土) 00:55:03 ] それっぽく自己解決しました。
450 名前:デフォルトの名無しさん mailto:sage [2005/06/04(土) 18:34:50 ] >>447 drawRegion()が使えるならそれが一番早いと思うが。
451 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 17:22:58 ] 関連スレに追加お願いします。 【日本携帯】Mascot Capsule/Micro3D【標準】 pc8.2ch.net/test/read.cgi/tech/1117773530/l50
452 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 11:32:55 ] Calendarクラスにaddメソッドがみあたらないんですが どうやれば日付計算できますか?
453 名前:デフォルトの名無しさん mailto:sage [2005/06/07(火) 04:28:43 ] >>452 ミリ秒になおしてsetTimeInMillisでも使っとけ。
454 名前:452 mailto:sage [2005/06/07(火) 12:41:57 ] >>453 おお なるほど その手が ありがとうございました。
455 名前:デフォルトの名無しさん mailto:sage [2005/06/11(土) 16:23:46 ] すごい基本的なことかもしれないけど、 auのエミュレーターってサウンドは鳴らないの? player = new MediaPlayerBox(resource, MediaPlayerBox.BACKGROUND); player.play(); でエラーなく通過するけど音でない。エミュレータの仕様なのか?
456 名前:デフォルトの名無しさん mailto:sage [2005/06/11(土) 18:46:52 ] >>455 Phase3エミュならphrasePlayerは鳴ったけど
457 名前:455 mailto:sage [2005/06/12(日) 00:53:41 ] うーむ。だれかphase3エミュをupしてくれる神の降臨希望。 auなんて実機もっとらんから全くためせない。<iアプリを移植中です。
458 名前:455 mailto:sage [2005/06/12(日) 00:55:48 ] ちなみに音系アプリで、内部でpmdとかmmfとか動的に作成してるので、 音機能をエミュでためせないのは致命的かも。。
459 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 01:17:48 ] ライセンス違反
460 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 01:19:32 ] つか Phase3 はもう捨てようぜー。 新規で買えないしさー。 じゃなきゃ、ケーブル使って 実機で動かすしかないよなー。
461 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 13:43:25 ] >455 ここにはもうなかった? 【Java】EZアプリ勉強しつつ作っていく hobby7.2ch.net/test/read.cgi/appli/1075443374/
462 名前:455 mailto:sage [2005/06/14(火) 00:13:30 ] おお!神!
463 名前:デフォルトの名無しさん mailto:sage [2005/06/16(木) 04:20:09 ] 3GではまだStorageConnectionは使えませんか…orz 3Gの開発環境は出てるのに、携帯実機で動かないのは蛇の生殺しすぎ。 一体何時になったらコンテンツアグリゲータはTrustedなアプリが配布できるようになるのだろうか???
464 名前:デフォルトの名無しさん mailto:sage [2005/06/16(木) 04:35:41 ] vodafoneはやるきまんまんですよ
465 名前:デフォルトの名無しさん mailto:sage [2005/06/20(月) 20:24:29 ] Vアプリの開発初心者です。 自前のiアプリ(スクロールゲーム)をVアプリに移植したのですが v-appliエミュレータで実行すると、速度がかなり遅いです。 実行するとCPU使用率が80%ぐらいをキープして観るに耐えなくなります。 実機がないのでエミュレータの問題かプログラムの問題かが切り分けられません。 特に重そうな描画処理を間引きして実行しても速度が全然かわらないので見当がつきません。 なにかVアプリで注意しなければならない点などありますか。
466 名前:デフォルトの名無しさん mailto:sage [2005/06/20(月) 21:43:07 ] >>465 「かなり遅い」が何と比べてどの程度遅いかは知らないが、 概してエミュレータの動作は実機より遅いもの。 速度調整はエミュレータでなく実機でやるべき。
467 名前:sage mailto:465 [2005/06/20(月) 22:57:43 ] >>466 レスありがとうございます 説明不足、失礼しました。 かなり遅いというのは「iアプリのエミュレータ」と比べてです。 iアプリのエミュは実機とは比べ物にならないくらい速いです。 [環境]:Pen4の1.7MHz メモリ512M なのでVアプリのエミュを動かしたとき あまりにも遅くて不安になったのです。 でも>>466 氏の話を聞いて安心しました。 ありがとう
468 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 00:27:57 ] へー、iは速いんだ。知らなかった。 機種依存めんどいみたいだけど、それはうらやましいな。
469 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 01:36:28 ] 私もエミュレータ自体はvodafoneの方がdocomoより重い感じがします。 実際に実機で動かしてチェックするに越したことはないけど、難しい話ですね。 ゲームのようなリアルタイムが要求されるものの、速度の調節なんかは、 フレーム単位で計算して、 速度が速いときは、適度にsleepかけたり、 速度が遅いときは、描画をスキップ(間引き)したりして、 描画間隔を整えるのが一般的なんじゃないかな? vodaにも npaka.yoko.ne.jp/bench/bench.jsp のような、ベンチ結果が出てるものがあれば、参考になるのにね。
470 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 01:44:15 ] 同じボーダでも エミュのバージョンにもよる。 JSCL1.2..1の エミュは尋常じゃないほど遅いぞ 実機より遅い。 逆にそれ以前のJSCLのエミュは実機より早い。ドコモ並み。 ちなみにAUのあるエミュは尋常じゃないくらい早いのが多い
471 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 01:54:04 ] 今、Vアプリを作る人がvodafone携帯を購入する場合 どの機種を購入するのがオススメってありますか? ドコモは少し前までN505iあたりがクセ強いのでイイとされてましたが。。 今ならFOMAでしょうけどね。
472 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 02:36:10 ] V602SHか、3GならV802SHってとこかな。 ヤヴァイくらいク(w
473 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 06:44:20 ] V603使ってるがエミュが実機より遅いなんてありえない PCのパワーが足りないだけだろパソコンを買い換えなさい
474 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 07:18:47 ] セレロン2.8Ghzだけど遅い。 そんなに高性能なのが必要なの?
475 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 08:57:22 ] 仕事でこのへんのネタやることになりそう。 で、チョット調べただけの状態で質問です。 全社対応のアプリって、ヤバイネタだと思いますか? MIDPって基本仕様が根っこにあって、 その上にiアプリとEZ、Vがそれぞれ別のフレームワーク立ててるらしいってあたりまで 調べただけなんですが… 現状の話によると、iアプリとEZ,Vに全部対応させるらしい…。 確かにMIDPって基本仕様が共通だから、ぱっと見できそうに見えるかもしれないけど、 これってかなりやばい話だよね? メモリもCPUも限られてて、その上機種毎の差異に悩まされるはずなのに、 さらに各社のAPIの差異まで入ってきたら、血を吐きそうだ…。 本当に一本のコードなのか、別バイナリレベルでは分けられるのかは不明です。 でも、仮に別バイナリだとしても、結局書かなきゃ行けないわけで。 今ならまだ止められるかもしれないから、識者のつっこみ求む。
476 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 09:02:32 ] 具体的な内容もわからないのに、答えられるわけないでしょ。 仕事なら、自分でチョットじゃなくてちゃんと調べれ。
477 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 09:17:35 ] >>475 iアプリはCLDC+独自API EzおよびVは、CLDC+MIDP+独自API まともにやろうと思うと、結局特化した別コードを書く必要は出てくる。
478 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 09:36:44 ] >476 ゴメンヨ 鬱から復帰の一発目だからさ、ヤバイのは避けたいってのがあるんだよ。 まだやるかどうかも不透明みたいだから、やばいなら早めに回避できたら、と。 もちろん調査も今やってるんだけど、なにしろこのへんは経験値がないからさ。 >477 失礼、MIDPが一緒、じゃなかったですね。 共通化できるのは、CLDCレベルまでか…。 どの程度まで共通化できるかだなぁ。 3/4程度まで行けるなら、何とかなるかもしれないけど… それ以上だと辛いなぁ…。 今からCLDCの仕様とか探して読んできまっす。
479 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 11:28:33 ] >>473 PCの問題じゃねえよww >>478 おれは、Docomo,Vodafone,Au 3機種全対応のプログラム作ってるよ。 iアプリとvアプリはほとんど同じにコードにできるけどEZだけは少し別 でも要はローレベルな関数(サウンド周りとか)だけ各種対応しとけばOK アプリのメインフレームは同じコードをコンパイルしてる
480 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 13:42:51 ] 仕事でVアプリ作ってます。で、聞きたいんだけど、 V902TとV902SHって、随分と細かい部分の挙動が違ってない? V603SH用のアプリをV603Tで動かすのはとても簡単なのに、 V902SH用のアプリをV902Tで動かすのはえらい大変なんだけど・・・
481 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 14:01:02 ] 例を出せ
482 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 14:12:40 ] >>480 Vodaの端末は数字部分が同じだからといって中身が近いとか勘違いしたらダメ。 しかもメーカー違う端末比べていればなおさら。
483 名前:475 mailto:sage [2005/06/21(火) 15:26:56 ] >479 dクス 全対応って、一本のバイナリ? さすがにそれは、compile時に分けるよね? とりあえずiMode系中心に調べてみた。 俺の使ってるのがDocomoだから、実機が手元にあるってのもある。 で、結構いけそうだねぇ。 結局のところ、コア部分をCLDCレベルで書いてしまえば、 Canvasあたりの基本クラスは起動トリガだから別実装でもいいし、 nttなんちゃらパッケージだのは、interfaceなり起こしてまとめてラップしてしまえばいいのかな。
484 名前:デフォルトの名無しさん [2005/06/21(火) 16:44:45 ] Vアプリを開発しているのですが、 通信で10KのJARファイルを取得するとエミュと実機でファイルのサイズが 違います。原因はなんでしょうか?(5Kのファイルだと同じでした) どなたかご教授ください。 HttpConnection hc; hc = (HttpConnection)Connector.open(url, Connector.READ, true ); long size = hc.getLength(); ←エミュと実機でサイズが違う
485 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 16:58:41 ] 60x以前のだと6Kがファイルサイズの限界だからじゃないの
486 名前:484 [2005/06/21(火) 17:03:57 ] JSCL1.2.0で作成しています。
487 名前:デフォルトの名無しさん [2005/06/21(火) 17:22:21 ] アプリ起動時にサーバーと通信してそのアプリが最新バージョンかチェック して最新でない場合は確認を促してから自動で新バージョンにバージョンアップするというプログラムは 可能でしょうか?
488 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 17:26:09 ] >>487 >アプリ起動時にサーバーと通信してそのアプリが最新バージョンかチェック >して最新でない場合は確認を促してから までは可能。 端末のWeb機能を呼び出せる場合は、そこからダウンロード画面までは可能。
489 名前:デフォルトの名無しさん [2005/06/21(火) 17:33:54 ] 早速のご解答ありがとうございます 自動DLは不可ってことですね。 とても参考になりました、ありがとうございます
490 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 19:00:43 ] >484 とりあえず開発ガイド 9.1.2 を、『何も考えず』 移植してみるのを勧めてみる。 違うかもしれんが、アプリサイズが余裕なら この位入っててもいいだろう。 >475 どっかに共通化するフレーム作ってる奴いたから、 ある程度は共通化できるんだろうけどな・・・。 うちは505iのサイズの制約のせいで そういうのは作れなかったorz
491 名前:487 [2005/06/21(火) 20:29:24 ] 先ほどの質問の続きなのですが ユーザーをダウンロードページまで(アプリで)誘導して ダウンロードさせる際に、現在の旧バージョンのアプリに上書きということは意図的に出来るのでしょうか? 私のテスト機では「test」というアプリだった場合には「test1」という名前のアプリができてしまいました 何卒よろしくお願いいたします。
492 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 20:42:59 ] au ? ならどっかに説明書いてなかったっけ? web かもしれんし doc かもしれんが……。
493 名前:デフォルトの名無しさん mailto:sage [2005/06/22(水) 17:40:42 ] >>491 vodaなら可能だが、auでは無理だった希ガス
494 名前:デフォルトの名無しさん [2005/06/25(土) 13:29:56 ] 質問です wavデータからspfファイルを作成することはできますか? VアプリでBGMと効果音を同時に再生したいのですが mmfとspfを同時に鳴らすことができないようなので 効果音をMIDIで作成しないといけないのかと困惑中でございます。
495 名前:デフォルトの名無しさん mailto:sage [2005/06/25(土) 13:45:39 ] ん?mmfとspf同時再生できるよ。
496 名前:デフォルトの名無しさん mailto:sage [2005/06/25(土) 13:50:32 ] >>495 レス、ありがとうです 今、必死に開発ガイド読んでたら、AudioPhraseというのがあると知りました。 #読んでから質問しろって話ですよね onz.. もしやAudioPhraseにapfではなくmmfを渡して使うのでしょうか?
497 名前:496 mailto:sage [2005/06/25(土) 14:08:52 ] スレ汚して失礼しました 上記の方法で無事、再生することができました
498 名前:デフォルトの名無しさん mailto:sage [2005/06/25(土) 17:14:36 ] AudioPhraseでPCMデータは鳴らせるの? エミュで鳴ってくれない・・・・。 ttp://www.dp.j-phone.com/dp/tool_dl/soundlib/pcm2/jp103.mmf を鳴らしてみたいのだが・・・・。
499 名前:デフォルトの名無しさん mailto:sage [2005/06/25(土) 23:12:34 ] >>498 鳴らせました そのmmfも鳴りましたよ ファイルには問題ないようです
500 名前:デフォルトの名無しさん [2005/07/01(金) 00:35:39 ] ちょっと先輩方に質問。 たまにRPGとかで、タイトル画面に入る前にNOW LOADINGとかしてるアプリあるけど、あれって何してるの?圧縮した画像とかをレコードストアに展開とか?
501 名前:デフォルトの名無しさん mailto:sage [2005/07/01(金) 00:38:39 ] sage
502 名前:デフォルトの名無しさん mailto:sage [2005/07/01(金) 00:49:38 ] >>500 アプリによるからわからん つかりソースをネット上に置いていてそれをダウンロードしてるんじゃね?
503 名前:デフォルトの名無しさん mailto:sage [2005/07/01(金) 10:00:38 ] >>500 たいていはcreateImageとかだと思う。
504 名前:498 mailto:sage [2005/07/01(金) 10:39:17 ] >>499 ボリュームを最大にしていたら鳴らず、 ボリュームを下げたら鳴るようになりました。
505 名前:500 mailto:sage [2005/07/03(日) 04:41:19 ] >>502 ,503 レスサンクス。でも俺の聞き方が悪かった。 タイトル画面に入る前に「結構な」時間(10秒とか20秒とか)ロードに使ってるアプリがあるけど、 何してるんだろう。と聞くべきだった。 createImageなら俺も最初にタイトル画像+αくらいはするけど、 NOW LOADINGって表示を出す必要があるほど時間がかかった事はない。
506 名前:506 mailto:sage [2005/07/03(日) 11:16:42 ] その時間はゲームによって違うと思うけど画像のパレットの変更とか回転画像の生成とか音の生成とかだと思うよ。 単に.pngを読み込むだけじゃそんなに時間かかることは無いっしょ
507 名前:デフォルトの名無しさん mailto:sage [2005/07/04(月) 10:25:58 ] >>505 アプリ中で使う画像を全部読めば結構な時間かかることもある。 けど20秒は長すぎなので、もしかしたら通信してるかもしれん。
508 名前:デフォルトの名無しさん mailto:sage [2005/07/04(月) 11:28:56 ] image150個sound20個その他データで10秒以上かかる。
509 名前:デフォルトの名無しさん mailto:sage [2005/07/04(月) 11:32:40 ] RPGじゃ結構読込む情報はおおいと思うぞ。 歩行、エフェクト、マップチップ、音など。 細切れを1つずつ読み込むように作成してると さらに遅くなるしな。
510 名前:デフォルトの名無しさん [2005/07/04(月) 22:32:04 ] >>508 それだけ読んでヒープオーバーしないの?
511 名前:デフォルトの名無しさん mailto:sage [2005/07/05(火) 01:26:36 ] imageデータとsoundデータの容量次第だろ ちいさければ普通に乗っけられる
512 名前:デフォルトの名無しさん [2005/07/06(水) 17:03:50 ] 結局、、、メガアプリで通信ができないことや trusted のことやら みなさん どうなりました? わたしは、待ち受けアプリにすると、起動時にエラーが出て終了して、困っています。
513 名前:512 [2005/07/06(水) 18:23:39 ] MIDlet-Certificate-1-1: と MIDlet-Jar-RSA-SHA1: を jad に追加したのですが、 実機(V802SH)でダウンロードしようとすると、 不正なデータなため、ダウンロードできません。 と表示されてしまいます。 MIDlet-Certificate-1-1: と MIDlet-Jar-RSA-SHA1: の内容は、 公式な認証機関で作られたものでないと、許可されないのでしょうか? どうか、お助けください。
514 名前:デフォルトの名無しさん mailto:sage [2005/07/06(水) 18:31:03 ] >>513 アプゲのサーバーからDLしたの?
515 名前:512,513 [2005/07/06(水) 21:16:37 ] >>514 はい スパイシーソフトの 法人契約 ビジネスプロバイダー for Vアプリ からです。
516 名前:デフォルトの名無しさん mailto:sage [2005/07/06(水) 21:41:57 ] >>512 アグリゲーター(アプリゲットorゲームチャンネル)が発行する証明書でないとダメ。 jadとjarをアップロードしたあとにアグリゲーターが署名してくれるので、作者がやることはないということになると思う。 しかしこのサービスが開始されるのはいつのことになるやら・・・
517 名前:512,513 [2005/07/06(水) 22:27:03 ] >>516 アグリゲータとvodafoneに質問してみました。 明日には回答がくることになっています。
518 名前:512,513 [2005/07/06(水) 23:15:49 ] >>516 現状、世に出ているメガアプリは、 通信機能、待ち受け機能がない ということでしょうか? 公式サイトのアプリは別として。。
519 名前:512,513 [2005/07/07(木) 13:22:01 ] メガアプリで、通信、待ち受けを実現するには、 www.dp.j-phone.com/dp/jcsp/termq/ このVSPになれば出来るのでしょうか?
520 名前:512,513 [2005/07/07(木) 13:27:59 ] それとも、 オフィシャルコンテンツに申しめば良いのでしょうか? www.dp.j-phone.com/dp/jcsp/termq/
521 名前:デフォルトの名無しさん [2005/07/07(木) 16:44:02 ] すいません。 初歩的な質問なのですが、現在Vアプリを作成してまして実機で動作確認するために アプリゲットに登録してアップロードしようとしています。 そこでFTPソフトとIEを使って試したのですがどちらもアップログに 〜jadファイルと〜jarファイルの内容に破損が検出されました と出てアップできません。 jadとjarの作成にはJBuiderXのアーカイブビルダを使用しています。 もし似たような状況で改善したよという方がいらっしゃいましたら、 何でも結構ですので教えていただけないでしょうか。 宜しくお願いします。
522 名前:デフォルトの名無しさん mailto:sage [2005/07/07(木) 16:54:47 ] >>521 jadはテキスト、jarはバイナリでアップしてる? 私の問題は火曜日頃から正しくアップされてるのに端末にダウンロード出来ないのだが 他にそのような症状の方いませんか?
523 名前:デフォルトの名無しさん mailto:sage [2005/07/08(金) 20:08:37 ] >>522 ようやく復旧しますた
524 名前:デフォルトの名無しさん mailto:age [2005/07/13(水) 06:25:29 ] MailAgentとMailDataを使用して Vアプリからメールを飛ばそうとしているのですが、うまくいきません。 MailDataのMailData.BODY_INFOに改行を含めると java.lang.IllegalArgumentException: format error is bodyが出力されます。 "\r\n"や"\n"などで試したのですが、同様の例外が発生します。 どのような改行コードを含めると、うまくいくのか教えて下さい。 よろしくお願いします。
525 名前:デフォルトの名無しさん mailto:sage [2005/07/16(土) 01:24:19 ] Vアプリを作っている方にeclipseのリモートデバッグ設定で質問があります。 v-appliエミュレータ(1.2.2)での実行はうまくいったので、eclipseを使いブレークを張りながら順に進めてみたくなり eclipseの「実行」-「外部ツール」でロケーションにemuへのパス、作業ディレクトリはエミュのbinフォルダ、引数に以下を打ち込んで実行しました。 -Xdebug -Xrunjdwp:transport=dt_socket,address=localhost:2800,server=8000,suspend=n -Xdescriptor:C:\hoge\bin\hoge.jad で、エミュレータが起動し、作成したアプリが表示される所までいきました。 次に、「実行」-「デバッグ」を選択し、localhost : ポート8000、リモートVMの終了を許可にチェックを付け デバッグボタンを選択すると、コンソールウィンドウに「[[KVMDebugProxy/Out]]: Connection received.」と表示されました。 この状態で、プログラムで必ず通るpaintメソッド内にブレークを張り、再描画させてもブレークで止まってくれません。 ステップ実行しながら進めていきたいのですが、ここからどのようにすればいいのでしょうか?
526 名前:デフォルトの名無しさん mailto:sage [2005/07/16(土) 18:28:52 ] いまさらEZアプリなんですが dojaで使えるsetPixels(int x, int y, int width, int height, int[] pixels, int off) をEZアプリで使えるようにとメソッドを独自で作ってみたのですが どうにもうまくいきません… public void setPixels(Graphics g,int x,int y,int w, int h,int[] buf,int pos){ //ここでRecordStoreにイメージを保存して…(ここがうまくいかない。byteだからかな) g.drawImage(img,x,y,this); } どなたかヒントだけでもかまいませんのでご教授願います
527 名前:デフォルトの名無しさん mailto:sage [2005/07/16(土) 18:39:23 ] >>526 求めてる動作とやってることがめちゃくちゃでないかい? setPixels()は色データの配列に基づいて画面(ないしImageオブジェクト)に 色を置いていくメソッド。なんでRecordStoreへの保存をsetPixels()の中でやるのさ。 まず自作メソッドの設計見直しと問題の切り分けをしようぜ。
528 名前:デフォルトの名無しさん mailto:sage [2005/07/16(土) 18:59:50 ] 確かに頭の中いっぱいいっぱいですorz よくよく考えてみると int[] buf のようにint配列のものをImageオブジェクトにしたいだけなんですが… うまくいかない…
529 名前:デフォルトの名無しさん mailto:sage [2005/07/16(土) 20:37:40 ] >526 まず DoJa の JavaDoc の Graphics#setPixels の説明を読もうぜ。
530 名前:デフォルトの名無しさん mailto:sage [2005/07/16(土) 20:39:42 ] >528 実行時にBYTE配列の中にPNGデータをプログラムで生成 -> Image化 ってーのはどうか?
531 名前:528 mailto:sage [2005/07/16(土) 21:08:07 ] >>530 たしかpngの生成は処理が重いと思ったのですが 結構頻繁に描写するので、できるだけ軽くしたいんですよ 今日はちょっと忙しいので後日試してみます 速かったらその方法でやってみたいと思います ありがとうございました
532 名前:527 mailto:sage [2005/07/16(土) 23:27:35 ] >>528 =526 >int[] buf のようにint配列のものをImageオブジェクトにしたいだけなんですが… 大きさ8*8ドットの任意の絵柄のImageオブジェクトを作りたい場合 64ドット分の色データの配列を用意する。 int col[] = { 0x00RRGGBB, 0x00RRGGBB, …64個のint型 }; その上で以下のように(例として)。 Image img = Image.createImage(8, 8); Graphics g = img.getGraphics(); ExtensionGraphics eg = (ExtensionGraphics)g; int i, x, y; for (y = 0; y < 8; y++){ for (x = 0; x < 8; x++){ i = y * 8 + x; eg.setPixel(x, y, col[i]); } } Phase3前提。col[]がストレージに保存してあるなら 必要ごとに読み込んで、imgを生成して、setPixel()する。 Imageオブジェクトの作成を1度にしてそれを保存しておきたいなら ImageEncoderクラス使ってJPEG保存だろう。 >>530 >BYTE配列の中にPNGデータをプログラムで生成 簡単にできるなら私も知りたい。
533 名前:528 mailto:sage [2005/07/16(土) 23:48:01 ] うひょー >>531 様ソースまで書いてくれて本当にありがとうございます。 後日試してみたいと思います。
534 名前:530 mailto:sage [2005/07/17(日) 00:31:18 ] 同僚がリソース内PNGをBYTE配列に取り込んで、パレットチェンジしてから Image生成ってことをやってたんで、割と平易にできるのかと思ってたんだが……。 もしかしたらパレットチャンクのデータを別に取ってあって、CRC計算を端折ってた かも知れん。すまぬ……。
535 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 01:10:38 ] 現在3Gに対応してるダウンロードサイトってないよね。 ダウンロードサイトが対応してないから、互換性があってもダウンロードできないって問題があって、 3G用の公開を諦めてたけど、進展はあったのでしょうか。 しばらく開発から遠ざかっていたのですが、今はもうクリエイターアプリも3G携帯で遊べますか?
536 名前:528 mailto:sage [2005/07/20(水) 03:13:54 ] >>532 ようやく時間がとれ作ってみました。 正常に表示まではいけました。 本当にありがとうございます。 いけたのですが、どうやら全画面を一点一点打っていくと激しく重いようです。 一枚表示するのに20秒前後くらいかかってしまいました(A5406CA) 折角ソースを書いていただいたのに大変申し訳ないのですが 他にそこそこ速く表示させる方法は無いものでしょうか? 自分で考えたのは(まだ空想と妄想の世界ですが) 1,byteでimageを作って表示 createImage(byte[] imagedata, int imageoffset, int imagelength) 2,jblend.graphics.m2d のSpriteImageを使ってみる どちらもbyteのため根本的に作り直さないと駄目な気もします…(int配列からbyteに変換できないらしいし) どちらかしか一括で表示できる方法が考え付きませんでした。
537 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 04:04:32 ] >3G用の公開を諦めてたけど 文章から判断すると開発者側とは思えないけどね 芽がアプリの開発できるならコンテンツアグリゲーターサイトの作者○○で○○してみたら すぐわかるじゃん 通信使うアプリはまだ動かないでしょ ひよこのブログで今月に対応するような情報書いてたけど どうなることやら7月もあと10日しかないけど
538 名前:532=527 mailto:sage [2005/07/20(水) 09:34:43 ] 激しく重いのはあたりまえ、というか承知の上。 色データの配列で与えられた絵を高速に描く方法はないよ。あきらめて。 だからこそDoJaはsetPixels(setPixelを一括処理する)をわざわざ別に用意したわけで。 >createImage(byte[] imagedata, int imageoffset, int imagelength) これの第1引数は、PNGやJPEGデータをInputStreamでオープンして得るbyte配列を指す。 >jblend.graphics.m2d のSpriteImageを使ってみる これで使うのはWindowsBMP。 BMPファイルのヘッダ部分まで含めてbyte配列上に作り込めるなら試してみても。
539 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 10:47:05 ] >>536 一体、何がしたいんだ?
540 名前:528 mailto:sage [2005/07/20(水) 17:17:31 ] >>539 えと、最近fomaでファミコンが実機並みの速度でできるエミュ「w」というのが あるのですが、auでもできないかと移植作業をしていたんです。 fomaには性能は勝てないので、遅いとはわかっていますが…。 実際どんなものかと興味がありました。 したら描写の壁にぶち当たりまして… そこで携帯電話ゲーム板の「EZNESについて語ろう」というスレで、協力してくれる人は 協力してくださいというような感じです。 ちなみにソースはこんなのです。パスは「audenes!」 ttp://upload.squares.net/upload/src/file0131.zip
541 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 17:45:34 ] パレットが固定なら、8bit BMP作ってpaint()時にSpriteImage作成でいけんじゃね?
542 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 21:48:04 ] >>537 レスサンクス 3G携帯の実機持ってないから実験できないんだよね 3G出たばかりの時はプログラムがmidpのみだったからjadを弄がったりもしたんだけどうまく行かなくて・・・ ネットで調べてみたらダウンロードサイトの方が対応してないから動かせないってあったんで信じてたんだけど、うまくやれば動くのか まあ時間があったらまた調べたり試したりしてみるよ
543 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 02:56:15 ] 同時発色数やスプライトにかなり制限あるから、 無理矢理スプライト化していろいろ最適化する余地はあるかもね。 ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%9F%E3%82%B3%E3%83%B3 uuseizin.web.infoseek.co.jp/fm/famicom.htm
544 名前:デフォルトの名無しさん mailto:sage [2005/07/22(金) 00:32:36 ] >>540 wやNES_iが出る前からEZNESがあったけど あのソースでは確かBMPからスプライト作ってた
545 名前:デフォルトの名無しさん mailto:age [2005/07/25(月) 11:17:19 ] ezplusEmulatorでrunを押すとこのようなエラーが出てしまいます。 つい1週間ほど前まではこのようなえらーが出ることはありませんでした。 ウェブで調べたんですが、具体的な理由や解決方法がよくわかりません。 誰かわかる方いたらお願いします。 **destoroy :C:\ezplusTools\Tools\Emulator\JbIme.exe ALERT: Cannot load class com/j_phone/io/BrowserConnection Application EMERGENCY termination. (-1)