- 1 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 12:42:32 ]
- J2ME CLDC+MIDPベースの携帯電話用Java(主にEZアプリ、Vアプリ)に関するスレッドです。
質問でも議論でも何でもこい、と。質問は公式資料をよく読んでからにしましょう。 前スレ: CLDC+MIDP+携帯電話用Javaスレッド part 8 pc12.2ch.net/test/read.cgi/tech/1206017034/ 過去スレ 携帯JAVAのスレッド pc2.2ch.net/test/read.cgi/tech/1011977260/(DAT落ち) CLDC+MIDP+携帯電話用Javaスレッド part 2 pc5.2ch.net/test/read.cgi/tech/1070858996/ CLDC+MIDP+携帯電話用Javaスレッド part 3 pc5.2ch.net/test/read.cgi/tech/1091798483/ CLDC+MIDP+携帯電話用Javaスレッド part 4 pc8.2ch.net/test/read.cgi/tech/1108781476/ CLDC+MIDP+携帯電話用Javaスレッド part 5 pc8.2ch.net/test/read.cgi/tech/1132493827/ CLDC+MIDP+携帯電話用Javaスレッド part 6 pc11.2ch.net/test/read.cgi/tech/1155174514/ CLDC+MIDP+携帯電話用Javaスレッド part 7 pc11.2ch.net/test/read.cgi/tech/1180010672/ >>2-5あたりにリンク集・;(`ε()゙
- 116 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 01:10:20 ]
- 111です
せっかくなんでCustomItemで一回やってみます paintの呼ばれ方がCanvasと違うみたい?な感じなんですかね
- 117 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 01:50:06 ]
- さあ?カスタムアイテムでやってみてい無理ぽかったらキャンバスで全部自前処理すればいいんだし好きにすればいいじゃんよう
- 118 名前:デフォルトの名無しさん [2009/10/13(火) 03:43:25 ]
- >>78みたいな日本語訳サイト読めば基本的なこと全部分かるやろ・・・
質問に来る奴はそういう努力はしないわけ?
- 119 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:09:18 ]
- javadocは大事なことはwebのガイドとチュートリアルに書いてあるのでそうとも限らん。
しかしまあjavadocすら読まないのは論外だよな。
- 120 名前:デフォルトの名無しさん [2009/10/14(水) 00:51:40 ]
- 英語読めない奴がプログラミングなんかするんじゃねえよ
- 121 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:23:52 ]
- とあるライブラリのjavadocがフランス語で書いてあって苦労した
- 122 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 01:40:12 ]
- フランス人が作ったライブラリってことか
- 123 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 18:25:59 ]
- 質問させてください
// モデルに視点変換設定 model.setViewTrans( pos, look, up ); // Y軸回転する行列 rot.rotationY( RotationY ); // 行列を合成 model.multiply( rot ); // FigureLayoutに設定 layout.setAffineTrans( model ); // 描画 g3d.drawFigure( figure, 0, 0, layout, effect ); で描画すると、モデルの周りをカメラが回転するような感じに なってしまいます。 モデル自体を回転させるにはどうすれば良いでしょうか?
- 124 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 23:06:59 ]
- マスコットカプセルスレにいってこい
- 125 名前:デフォルトの名無しさん [2009/10/15(木) 00:15:16 ]
- オープンアプリでガーベジ・コレクタって呼び出しってどう?効果ある?
- 126 名前:デフォルトの名無しさん [2009/10/15(木) 03:42:49 ]
- 実装による
- 127 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 00:03:20 ]
- Sアプリを作ったのでアプリゲットにアップロードしようとしたんですが
JADの一行目にMIDletの項目がありません と出て失敗します JADファイルには MIDlet-Name MIDlet-Vendor MIDlet-Version MIDlet-1 MIDxlet-API MIDlet-Jar-URL MIDlet-Jar-Size MIDlet-Data-Size MIDxlet-ScreenSize MIDlet-Icon の順に書いていて何がいけないのかまったくわかりません
- 128 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 01:41:47 ]
- JAD手書きかよ
- 129 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 02:03:03 ]
- eclipse使って作りました
メモ帳で開いたら>>127みたいな感じになってます
- 130 名前:127,129 mailto:sage [2009/10/16(金) 02:43:19 ]
- JADファイルをメモ帳からいじってたのがいけなかったみたいです
eclipse通してやったらいけました お騒がせしてすいませんでした
- 131 名前:デフォルトの名無しさん [2009/10/16(金) 03:03:56 ]
- ANSIとかUnicodeとかUTF-8とかの話か
- 132 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 21:52:25 ]
- その調子じゃプロガードもかけてねえんだろうな
- 133 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 22:38:46 ]
- ProGuardはかけなくてすむならかけない。
- 134 名前:7 mailto:sage [2009/11/01(日) 10:25:18 ]
- 7zip信仰よりはマシ
- 135 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 11:44:46 ]
- 新スレ立ってたのか…
part8スレが851で止まって見えるから 保守のつもりで書込んでやっと気付いた
- 136 名前:デフォルトの名無しさん [2009/11/12(木) 01:35:49 ]
- すみません、Eclipseで開発しているのですが、resフォルダに入れた画像が読めなくて困っています。
createImageを行うと、IOExceptionが発生してしまいます。 どなたか、設定等知ってましたら教えてください。(そんなに大した設定はないとは思うのですが) コードはこんな感じです。 Image im_test; try{ im_test = Image.createImage("/test.png"); }catch(Exception e){ System.out.println(e.toString()); } ・resフォルダにtest.pngが入れてあります。 ・resフォルダはビルドパスに登録してあります。 [環境] JDK1.6.0_17 Eclipse SDK 3.2.0 Wireless Toolkit 2.5.2 for CLDC 色んなことを何時間も試したのですが解決しません…。 この設定でうまくいってるというのでも教えて頂けると大変助かります。
- 137 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 02:41:45 ]
- eclipseスレに池
- 138 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 09:07:10 ]
- リソースからの読み込みの仕方をちゃんと仕様読め
まったくもって間違ってるじゃねーか
- 139 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 11:25:49 ]
- んだ
- 140 名前:136 [2009/11/12(木) 12:55:26 ]
- >>137
MIDP関連なのでeclipseスレで聞くより、こっちのほうがやってる人多いのではと思ってこっちで質問しました。 >>138 >>139 ttp://www.sinsen.org/midp/ ttp://www.ngy.1st.ne.jp/~takashi/MID/ このへんを参考にやってみたのですが、どこが違うのか何が足りないのか教えて頂けますか? ちなみにeclipseで実行(ビルド)すると[プロジェクトDIR]/resの中身が[プロジェクトDIR]/binにコピーされます
- 141 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 13:06:50 ]
- テキストエディタ最強
- 142 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 13:13:28 ]
- bin下にコピーされてもしょうがない。
jarに含まれないと。
- 143 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 23:46:03 ]
- だからeclipseスレに池ksg
MIDP関係ない。eclipseMEかmtjの設定ミスってるだけだろ。
- 144 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 16:04:51 ]
- いちいちファビョるなよ
>>140はもういないだろ
- 145 名前:136 mailto:sage [2009/11/13(金) 23:00:39 ]
- みなさん、ありがとうございます。
無事解決しました! 原因はeclipseの設定、ウインドウ→設定→J2ME→Deployment Directoryがdeployedではなくbinになっていた為でした。 スレ汚しすみません。 iアプリをMIDPに移植しようとして半年前もここでつまってました^^;
- 146 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 15:57:19 ]
- iアプリのゲームを移植しているのですが、S!アプリでは拡大・縮小・回転ができないのでしょうか?
1ドットずつ自力描画する他の方法はありませんでしょうか?
- 147 名前:デフォルトの名無しさん mailto:sage [2009/11/18(水) 17:29:11 ]
- さすがにググれと言わざるを得ない
- 148 名前:146 mailto:sage [2009/11/20(金) 07:49:51 ]
- 調べた所できないようなので、あきらめます。
- 149 名前:146 mailto:sage [2009/11/20(金) 07:50:33 ]
- ごめん、、あきらめたら仕事できないんだった、どうしようかな
- 150 名前:146 mailto:sage [2009/11/20(金) 07:59:26 ]
- 前スレから情報出てきた。ありがとうさんです。
CLDC+MIDP+携帯電話用Javaスレッド part 7 unkar.jp/read/pc11.2ch.net/tech/1180010672 137 :デフォルトの名無しさん[sage]:2007/07/17(火) 02:54:51 質問させて下さい。 iアプリ用に作成したゲームをSoftBank、AUに移植しようとしているのですが 画面のフェードアウト処理が出来ずに困っています。 iアプリではgetColorOfRGBで徐々に画面を白や黒にしていたのですが MIDPで解決する方法を教えて頂けないでしょうか? ただPixelごとに処理していると処理時間が凄く遅くなりそうで怖いです。。 画面自体の明るさを変更するような命令でもあれば楽そうですが…。 138 :デフォルトの名無しさん[sage]:2007/07/17(火) 09:43:49 >>137 ソフバンならrenderPrimitivesで一枚でかいのを上からのっければカラー減算、加算、半透明といろいろできるよ。 AUは切捨て。 139 :デフォルトの名無しさん[sage]:2007/07/17(火) 15:16:29 >>137 対象画面の画像をオフスクリーンバッファに描くようにして、 Image#getRGB()で1画面分の色を取得して一括処理、 その配列からImage#createRGBImage()で画像生成、描画。 拡大/縮小処理でやったことあるが速さは期待できない。しかし他に方法はない。 オープンアプリでは板ポリゴンを描画できないし。 速さが必要ならメッシュパターン(市松模様)をいくつか用意して重ね描き。 むかーしむかし、セガサターンというゲーム機があってのう…ゴホゴホ ア、オジイチャン、ネテナキャダメヨ
- 151 名前:146 mailto:sage [2009/11/20(金) 08:02:15 ]
- なんでケータイはこんなに低スペックなんだろ・・・('A`)
CLDC+MIDP+携帯電話用Javaスレッド part 8 unkar.jp/read/pc11.2ch.net/tech/1206017034 473 :デフォルトの名無しさん[sage]:2008/08/12(火) 21:15:22 今、S!アプリで拡大縮小機能を自作していようと思い、作っているのですが なかなかうまくいきません。以前、Cで同じメソッドを作ったのでそれを参考にしたのですが、そのときはchar型のポインタ配列を、freadで画像から読み込ませて 変形させたら何とか出来たのですが、Imageクラスの中身が何なのかわからないのでどうやって ほかの型にデータを渡して変形させればいいのか皆目見当がつきません。 アドバイスをください。お願いします。 474 :デフォルトの名無しさん[sage]:2008/08/12(火) 21:45:45 >473 MIDP2.0のAPIリファレンスくらい読みましょうよ そしたら皆目見当がつかないなんてことないから 475 :デフォルトの名無しさん[sage]:2008/08/13(水) 02:51:53 >>473 Cとかcharとか言ってるとこを見ると、 Imageオブジェクトの中の人に生でアクセスしたいんだろうけど、 それはムリ。 それができないようにクラス設計されてるんだし。 >474 のいうように、まずはリファレンス見てから考えれ。 ・・というか、MIDPだけではムリじゃなかったっけ。 476 :デフォルトの名無しさん[sage]:2008/08/13(水) 03:53:57 >>473 RGBの配列を取り出して、変形して、描画すればよい。 477 :デフォルトの名無しさん[sage]:2008/08/13(水) 10:53:35 Image.getRGBで取得すればいい んで、Graphics.drawRGBで描画 ただ、速度は遅いけどね
- 152 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 10:11:24 ]
- もう十分高機能すぎて、開発費程儲からなくなってる。
- 153 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 13:32:11 ]
- ガラパゴス化ですね、わかります。
- 154 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 20:17:20 ]
- >>146
S!アプリって拡大縮小無かったのか… さらっと調べたところ3D使えるみたいだから ビルボードにしてしまうってのは?
- 155 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 22:46:52 ]
- 携帯が低スペックとか釣り針でかすぎ。
javaと3Dが動く時点で十分高性能。 つかチラ裏コピペうざい。
- 156 名前:デフォルトの名無しさん mailto:sage [2009/11/20(金) 23:31:36 ]
- 3Dは専用チップに丸投げだから、それだけで高性能というのはいかがなものかと
- 157 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 03:16:17 ]
- 組み込みでそんなチップ積んでりゃ十分高性能なH/Wと謳えると思うが。
- 158 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 03:19:17 ]
- 肝心な操作性能がもっさりしてるのに高機能と誇られてもwww
- 159 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 06:34:21 ]
- >>155は10年前からタイムスリップしてきたんです
時代錯誤な言動をどうか許してやってください
- 160 名前:デフォルトの名無しさん mailto:sage [2009/11/21(土) 15:07:42 ]
- ここってjavaMEしか組み込みやったことないやつしかいないの?
- 161 名前:デフォルトの名無しさん mailto:sage [2009/11/22(日) 11:59:29 ]
- >>160
日本語でおk
- 162 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 14:37:49 ]
- com.jblend.io.InflateInputStream は
PHPでgzdeflateしたデータ読み込めないのかな・・? Javaでdeflateしたデータのみ対応?
- 163 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 15:26:57 ]
- gzのヘッダだけ取り除けばいけるんじゃない? RFC1952参照
- 164 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 10:19:11 ]
- >>163
gzdeflateはGZipじゃないんだが・・・ 一応GZip圧縮したファイルから0〜256バイトほど読み飛ばして InflateInputStream で読み込めるか試したがダメだった。
- 165 名前:162=164 mailto:sage [2009/11/27(金) 10:47:07 ]
- phpのgzdeflateとJavaのDeflaterで作成したファイルを比較してみた。
Javaの方に先頭に2バイト、尻に4バイトよく分からんデータがある。 その他は同じ。 試しにヘッダのみphpで作成したファイルに追加したら InflateInputStream で読み込めるようになった。 InflateInputStream の方にはdeflate圧縮としか書いてないし RFCは斜め読みしたが結局上記のバイトが何物か分からなかったが、 ひとつ言えるのはGZipやその他から引っこ抜いたデータのみ渡しても、 InflateInputStream では読み込めないらしい。
- 166 名前:163 mailto:sage [2009/11/27(金) 10:55:43 ]
- 適当なこと言ってすまんかった
先頭2バイト最後4バイトはzlibフォーマットかも RFC1950のほう
- 167 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 13:18:35 ]
- オープンアプリの規格のCLDC1.1 MIDP2.0だけど
これってiPhoneとか他社の携帯アプリとかに修正なしに使える?
- 168 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 13:27:31 ]
- iPhoneは知らんが基本的には使えないと思っていい。
でも使えなくもない場合もあるかもしれない。
- 169 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 13:31:51 ]
- そもそもiPhoneでJava動いたっけ
- 170 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 13:36:43 ]
- Object-C
- 171 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 14:07:50 ]
- >>168-170
なるほどどーもです
- 172 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 17:29:08 ]
- iPhone用のJVMを開発するとか去年アナウンスされてた気がする
- 173 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 17:31:47 ]
- アップルが作るって?
- 174 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 17:33:27 ]
- サン、「iPhone」向けのJavaを開発へ:モバイル - CNET Japan
ttp://japan.cnet.com/mobile/story/0,3800078151,20369057,00.htm
- 175 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 17:51:16 ]
- スレチかも知んないけど、
海外製のCLDC1.1/MIDP2.0アプリで 複数のpng画像を一つのファイルとして 固めてある場合があるんだけど、 あれはどういう仕組みになってんでしょう? ツールか何かで固めたんだろうけど、 どう読み込んでるのか検討が付かない…
- 176 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:00:57 ]
- 一つの画像に必要な絵を全部描いて
クリッピングして使いたい部分だけ描写してるんじゃねーの?
- 177 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:02:21 ]
- 普通にメモリに切り出して読み込んでるだけだろ
- 178 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:02:24 ]
- TiledLayerやSpriteも画像分割して使えるし
- 179 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:03:23 ]
- >複数のpng画像を一つのファイルとして固めてある
これの意味がわからない どういう状態なの?
- 180 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 20:36:50 ]
- レスどうもです
>>176,179 ゲームアプリなので多くの画像が使われてるんだけど、 それらの画像がImage.pakファイル一個にまとまってます Image.png等にリネームしても、png画像として画像ビューアで 見ることはできないです Image.pakを画像ファイル抽出ツールにかけると、 複数のpng画像ファイルを吸い出せます
- 181 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 20:53:25 ]
- >>177でFA
- 182 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 23:37:40 ]
- 海外は動画APIでMNGサポートがあったりする。
- 183 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 23:45:34 ]
- >>180
外部APIとかにそうゆうの扱うのがあるんじゃないの? CLDC1.1/MIDP2.0のAPIにはそゆの無さそうだし
- 184 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 01:32:48 ]
- 画像ファイル抽出ツールが有るのなら
そのツールの説明を読めば良いかと
- 185 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 07:35:14 ]
- だから、>>177だって
- 186 名前:175,180 mailto:sage [2009/12/11(金) 23:01:14 ]
- レスありがとう
検証してないけど、>>177で間違い無さそうです 方法は多分createImage(byte, int, int)の奴ですね 疑問が解消して、おかげですっきりしました pngを固めるフリーウェアは見付からなかったけど、 バイナリエディタで繋げてやるだけで行けそうですね
- 187 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 23:36:14 ]
- バイナリでつなげてるだけなら
ByteArrayInputStreamとかで分割してんじゃねえの?
- 188 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:59:42 ]
- なんで
>画像ファイル抽出ツールにかけると、複数のpng画像ファイルを吸い出せます て言ってるのに >pngを固めるフリーウェアは見付からなかったけど、 てなるの?単に特定の形式のファイルを抽出するツール使ってんの? てかバイナリエディタで開いてみればいいじゃん。PNGの仕様くらい分かるだろ。
- 189 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 22:01:03 ]
- >>188
名無しに戻るつもりでしたが… 無知なもんで、何を言わんとしてるか解らんです 一応pngのみを抜くツールを使ってます pngの仕様は今回把握したけど 読み込みの仕組みがわかっただけで満足です
- 190 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 09:57:26 ]
- iPhoneにのせるJVM開発してるらしいね。
- 191 名前:デフォルトの名無しさん [2009/12/13(日) 23:25:56 ]
- オープンアプリ開発してる奴ってこのスレにどれくらいいる?
- 192 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 00:14:29 ]
- スレッド内を「オープンアプリ」で抽出しろ
- 193 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 13:28:46 ]
- 通信確認毎回してくる超絶糞仕様OAPよりはFlashLite2.0以降の方が現実的な場合が多いし
- 194 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:16:04 ]
- ソフトキーも左右キーも使えないフラッシュですよね?
- 195 名前:デフォルトの名無しさん [2009/12/14(月) 20:19:10 ]
- そんなに通信アプリ作りたいのか?
- 196 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:19:59 ]
- 通信しないアプリは糞アプリ
- 197 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:40:54 ]
- 死ぬ程パケ代かかってもいいなら実装可能な仕様は結構ある。
- 198 名前:デフォルトの名無しさん [2009/12/15(火) 00:16:11 ]
- >>193
EZfactory見る限りではFlash Professional 8が必要とある。Flash Professional 8は無料じゃないじゃん。俺金ねーよ
- 199 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 00:20:15 ]
- 今日日携帯アプリ使うような奴はパケ代固定サービスに入ってると思うけどね
>>194 それはlite1.1以前 ソフトキーは知らんが
- 200 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 00:22:33 ]
- >>198
mtascとswfmillは無料じゃん
- 201 名前:デフォルトの名無しさん [2009/12/15(火) 00:33:30 ]
- >>200
ググってくる
- 202 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 00:38:39 ]
- >>201
【携帯でflash】 Adobe Flash Lite総合スレ Part3 pc12.2ch.net/test/read.cgi/swf/1200708605/
- 203 名前:デフォルトの名無しさん [2009/12/18(金) 12:35:26 ]
- TやPは普通の速度で動くものが、
SHで劇的に遅い事があるんですが、こういう問題に直面した方、 何か参考になりそうな情報や解決法はありますか? 当方で2パターンほど発生していて、 特定のタイミングで外部メモリを操作すると遅くなりそうだ、 ということしかわかっていません。 一方はスレッドの構築タイミングをズラすことで回避できましたが。
- 204 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 13:09:33 ]
- SHというとメモリ使いすぎがまず思い浮かぶ
- 205 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 13:42:18 ]
- >>203
まずは原因を特定しないと何も分からないですね・・・ 処理落ちのタイミングが不特定ならGCが原因かもしれないので、ヒープメモリを表示させてみるといいかもしれません。
- 206 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 13:48:04 ]
- オフスクリーンバッファだろうな
- 207 名前:203 mailto:sage [2009/12/18(金) 14:32:18 ]
- >>204-206
アプリAは最大6MB近くメモリを消費する3Dゲームで、 スレッドも5本ほど走っている状態で、もう何が何やら。。。 (引き継いだアプリなので詳細よくわかりません) こちらはロードのタイミングで遅くなりまして、 スレッドの構築タイミングを変えたら発生しなくなりました。 アプリBはメインスレッドで進捗表示、 別スレッドでSDからファイルを読み込むだけの処理しかしていなく。。。 オフスクリーンはどちらも画面2枚分程度。 外部メモリ(本体/SDどちらも)の読み込みが普段は数秒のところ、 数分〜何十分かかる感じです。 ラボでも確認しましたが、SHはほぼ全機種発生、T、Pは発生せず。 外部メモリの操作が怪しいと思い、 その近辺にThread.sleepやgcを入れまくっても解決せず。 うーん。
- 208 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 14:37:04 ]
- 最近SBMやってないからわからんけど、
昔のSHはメモリが高速動作できるメモリ領域と、 やたら遅くなるメモリ領域に分かれてた。 当然プログラム側からは同じメモリなので エリアも選べなければ、どこからその領域なのかも見えない。 でも、これは常識か。
- 209 名前:203 mailto:sage [2009/12/18(金) 14:57:20 ]
- >>208
それはVRAMの画面2枚分・・・でしたっけか。 どうも描画系のトコで遅くなっているわけではなさそうなんですよね。 説明が悪いと思ったので状況を整理すると アプリ概要 アプリA: 通信対戦3Dゲーム アプリB: SDを走査して、ポリゴンを表示するだけのビューア ヒープ アプリA: 最大6MB アプリB: 不明だがオフスクリーン分の250KB程度と思う 発生ポイント アプリA: いくつもあるロードのうちの2箇所だけ アプリB: 起動直後のロード中 発生中にやっている他の処理 アプリA: 通信、CPU思考スレッド走りっぱなし、簡単なプログレスバー表示 アプリB: 簡単なプログレスバー表示だけ GC箇所 アプリA: ロード直前 アプリB: ロード後 読み込み先 アプリA: 本体のその他フォルダ アプリB: SDのその他フォルダ 解決策 アプリA: 関係ないスレッドの構築タイミングを若干ずらした アプリB: 解決できないので数分待つ アプリAの解決策も納得の行く修正ではなく、何故直ったのかもわかりません。 もしかしてよくある事なのかと思ったのですが、そうでもないのかなぁ・・・ ちとアプリBの方のオフスクリーン1枚削ってみます。
- 210 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 15:05:25 ]
- メモリ確保の順番が変わって、スピードが欲しい部分のメモリが高速な領域側にのったのかと。
- 211 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 15:42:26 ]
- >>207
>その近辺にThread.sleepやgcを入れまくっても解決せず。 ちゃんとヒープメモリ表示させてみた? gcメソッドを呼び出しても実際にはメモリを解放するとは限らないよ。
- 212 名前:203 mailto:sage [2009/12/18(金) 20:25:36 ]
- アプリBのソースを確認したら、オフスクリーンはロード完了後に…
問題発生時のヒープ消費量は220KBでした。 >>210,211 アプリBは構造がシンプルすぎて、開放するものも殆どない状況です。 ヒープサイズの描画処理で増減してしまい判別できません。 アプリAは色々やり過ぎててデバッグ不可。 そもそもVRAMと関係のないJavaヒープ領域に高速やら低速やらが 存在するという文献を見たことがありませんけど、 何処に記述されているか教えてもらえませんか?
- 213 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 20:29:04 ]
- もうソースコードを削って発生条件の刈り込みをやるしかないんじゃない?
デバッグ不可って言われてもなあ・・・
- 214 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 21:43:38 ]
- VRAMなんてあんの?
- 215 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 09:10:44 ]
- >>212
CP情報に普通に書いてあるだろが
- 216 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:19:48 ]
- 原因把握せずスレッド構築のタイミングでなんか直ったとかで良いのか?
事を急がず引き継いだソースを把握するのが先なんじゃないの?
|

|