- 1 名前:デフォルトの名無しさん mailto:sage [04/09/24 15:07:03]
- BREW(Binary Runtime Environment for Wireless)についてのスレ
QUALCOMM BREWホーム www.qualcomm.com/brew/ja/ www.qualcomm.com/brew/ BREW JAPAN .COM|BREW増強計画 www.brewjapan.com/ 前スレ pc5.2ch.net/test/read.cgi/tech/1076511398/ 関連情報>>2-18 ■過去スレ 02 pc5.2ch.net/test/read.cgi/tech/1076511398/ 01 pc2.2ch.net/test/read.cgi/tech/1011078904/
- 267 名前:デフォルトの名無しさん [04/11/11 11:42:48]
- お忙しい所申し訳ありません。
質問が御座います。 モード選択でモードA・Bの二つを 上下キーで選択する処理を行いたいのですが、 「A1402S」のジョグダイアルにて キーが取得出来ない様なのです。 (端末が手元に無い為、動作確認出来ません;; ジョグダイアルの上下キー取得は AVK_UP・AVK_DOWNで問題無かったでしょうか? また、タイマー速度が速すぎると キーを取りこぼしたりはするのでしょうか? 参考にタイマー速度を幾つに設定しているか等 教えていただけると幸いです。 因みに、現在のタイマー速度は80_秒に設定しています。 何卒、よろしくお願い致します。
- 268 名前:デフォルトの名無しさん mailto:sage [04/11/11 12:24:36]
- >>267
AVK_UPとDOWNでおk。 ジョグダイアルって一瞬でPRESSとRELEASEのイベントが来るからそのせいじゃないのかな?
- 269 名前:デフォルトの名無しさん [04/11/11 14:01:05]
- >>267
ラボ行って試せ。がんばれ BREW ディベロッパー ラボ 無料 www.brewjapan.com/lab/index.html
- 270 名前:デフォルトの名無しさん mailto:sage [04/11/11 14:38:46]
- >>266
ここの住人が結集してフレームワーク作るってことか?
- 271 名前:デフォルトの名無しさん mailto:sage [04/11/11 15:44:10]
- >>267
タイマーって何ぞや? 普通にキーイベントを取得するだけなら、タイマーとか必要ない筈だが。 アプリのHandleEventで、eCode==EVT_KEY、wParam==AVK_UPとかを検出すれば出るはず。 そこにブレークポイントかDBGPRINTF置いて、処理がそこに行ってないようであれば、 キーイベント検出の前に何かのコントロールのハンドルイベントでTRUEを返してる可能性有り。 ちなみに俺はW21Sなんだが、ジョグダイヤルでもちゃんと検出できてるぞぃ。
- 272 名前:デフォルトの名無しさん [04/11/11 15:44:32]
- >>267
タイマーって何ぞや? 普通にキーイベントを取得するだけなら、タイマーとか必要ない筈だが。 アプリのHandleEventで、eCode==EVT_KEY、wParam==AVK_UPとかを検出すれば出るはず。 そこにブレークポイントかDBGPRINTF置いて、処理がそこに行ってないようであれば、 キーイベント検出の前に何かのコントロールのハンドルイベントでTRUEを返してる可能性有り。 ちなみに俺はW21Sなんだが、ジョグダイヤルでもちゃんと検出できてるぞぃ。
- 273 名前:デフォルトの名無しさん mailto:sage [04/11/11 16:22:25]
- >>267
俺の方は70msでちゃんとキーイベントが来てたからタイマーの間隔は大丈夫だと思う。 >>271 タイマーコールバックを短い間隔で回すとキーイベントが来ないことがあるってなかったっけ?
- 274 名前:271 mailto:sage [04/11/11 16:50:35]
- >>273
ん〜タイマーは数秒以上でしか使ってないからわからん。 後は任せた。
- 275 名前:267 mailto:sage [04/11/11 16:58:36]
- >>268
>AVK_UPとDOWNでおk。 それだけ分かっただけで助かります。 ありがとうございました。 原因は別の所に…; >>269 >ラボ行って試せ。がんばれ それが一番なんですが、何せここは北海道… もうすぐ雪が降りますわ…_| ̄|○ >>271-272 >タイマーって何ぞや? 製作中のアプリがゲームなので、 ゲームループ回すのにタイマーを使用してるんですよ。 んで、ループの頭で押しっぱなしやらを判定してます。 >ハンドルイベントでTRUEを返してる可能性有り。 他機種の上下キーによる動作は大丈夫なんで、 問題は無いかと…。 アドバイスからすると取得は問題なさそうなので、 違う箇所を検証してみます。 また何かあれば宜しくお願い致します。
- 276 名前:デフォルトの名無しさん mailto:sage [04/11/11 17:20:39]
- >>267
あー、たぶんキーを押したとかのフラグ処理が悪い。 RELEASEのときに押したっていう情報は残らないで そのキーが押されていない状態になるっていう処理になってないか?
- 277 名前:デフォルトの名無しさん [04/11/11 17:26:40]
- 質問させてください
Brewでゲームを開発しているのですが 「A5503SA」にてIWebで通信後、ゲームのスピードが重くなる 現象がでます。 他の機種(A5501T等)では、ゲームスピードが変わることはないので リリースのミスなどはないと思うのですが 同じような現象で対応策などありましたら情報を宜しくお願いします。
- 278 名前:デフォルトの名無しさん [04/11/11 17:33:39]
- >267
端末仕様書を見れ どのキーがどのイベントに対応してるか載ってますよ あと時間を窮する質問は掲示板ではしない法がよいかと思われ
- 279 名前:デフォルトの名無しさん mailto:sage [04/11/11 17:57:04]
- >>267
BREWはキー押しっぱなしだとEVT_KEYイベントが断続的に発生するから キー押されたらフラグ上げる →タイマーイベントでフラグをチェック+処理 →フラグをクリア →タイマーセット でいいと思うが。 わざわざRELEASE拾う必要なくね?
- 280 名前:267 mailto:sage [04/11/11 17:58:53]
- >>276
>RELEASEのときに押したっていう情報は残らないで >そのキーが押されていない状態になるっていう処理になってないか? あー、ビンゴです…; 要は EVT_KEY_PRESS 押したキーフラグ取得 EVT_KEY_RELEASE 放したキーフラグ開放 だと、 ゲームループ内で押しっぱなし等の確認処理を行う前に フラグが消えている _| ̄|○||| ってことでOKですか?
- 281 名前:デフォルトの名無しさん mailto:sage [04/11/11 18:15:06]
- 大体ソースが見えたな。
タイマーにかからないタイミングでキー連打したら、 全く動かないゲーム作ってるって事かw
- 282 名前:デフォルトの名無しさん mailto:sage [04/11/11 18:15:56]
- >>267
そゆことだな。
- 283 名前:デフォルトの名無しさん mailto:sage [04/11/11 18:39:43]
- >>270
欲しいなそれ。 むしろ作りかけの物をとりあえず公開して、 ああしようこうしような風に仕上げていっても良いかも試練。 へっぽこなモンだったら漏れも公開できますが。w
- 284 名前:デフォルトの名無しさん mailto:sage [04/11/11 18:50:31]
- 全てはへっぽこから始まる
- 285 名前:デフォルトの名無しさん mailto:sage [04/11/11 23:05:04]
- いいね、フレームワーク。
皆でやっちゃいますか?
- 286 名前:デフォルトの名無しさん mailto:sage [04/11/11 23:29:11]
- 賛成。
STLPortの移植も…
- 287 名前:デフォルトの名無しさん mailto:sage [04/11/11 23:37:45]
- ちっちゃい独自関数でもあると便利なんてのもありですな
- 288 名前:デフォルトの名無しさん mailto:sage [04/11/12 00:01:17]
- 今更かもしれないけど、自分はジョグだけはEVT_KEYで取ってた
- 289 名前:デフォルトの名無しさん mailto:sage [04/11/12 02:07:16]
- BREWのバイナリサイズに上限はありましたっけ?
STLPortのライブラリをリンクすると結構でかくなりそうな気がするんですが
- 290 名前:デフォルトの名無しさん mailto:sage [04/11/12 05:02:38]
- >>289
mod,sig,bar等とアプリが作成するファイル 全部含めて200KB(QVGA対応機は300KB)。
- 291 名前:デフォルトの名無しさん [04/11/12 10:21:41]
- >>289-290
ストレージも、シェアも・・・ 関係するファイルサイズ全て含めて200,300KBですよね。
- 292 名前:デフォルトの名無しさん mailto:sage [04/11/12 14:14:07]
- >>289>>291はサービスガイドと開発ガイドを全然読んでないだろ。
- 293 名前:デフォルトの名無しさん mailto:sage [04/11/12 16:07:17]
- タイマーのコールバック間隔とキーイベント破棄の関係について
サービスガイドに載ってる注意書きから抜粋。参考までに。 ※ BREW2.1 対応機種では、50ms 程度の短いタイマ間隔でコールバックを繰り返すとキープレスイベ ントが破棄される場合があります。 タイマ間隔を長くするなどのアプリ側でのチューニングが必要となりますのでご注意ください。
- 294 名前:デフォルトの名無しさん mailto:sage [04/11/13 00:10:09]
- modてギャクコンできないのかな
うっかり古いソースを上書きしてもうた
- 295 名前:デフォルトの名無しさん mailto:sage [04/11/13 00:18:52]
- 一般にオブジェクトコードからCレベルのソースを復帰するのは至難の業。
- 296 名前:デフォルトの名無しさん mailto:sage [04/11/13 13:10:30]
- とっとと思い出してコーディングした方が速い
っというか、仕事でやってるならバックアップぐらい とっとけよ
- 297 名前:デフォルトの名無しさん mailto:sage [04/11/15 12:43:46]
- >>293
30フレーム/秒は不可能というわけか。
- 298 名前:デフォルトの名無しさん mailto:sage [04/11/15 15:28:48]
- 良い機会だからCVSの導入または、毎日一回自動でバックアップを取るバッチを作るといいと思うよ。
ちなみにそう言うときはファイル名は backup-yyyymmdd.zip みたいにしてある程度世代管理してもファイル名がかぶらないようにすると良い。
- 299 名前:デフォルトの名無しさん mailto:sage [04/11/15 15:32:07]
- >>297
可能だと思う。処理しきれない速度でイベントが到達すると、 many callbacks pending とか何かでイベントが破棄されるだけ。 だから、一回の処理が10〜30ms程度で完了するのであれば、30fpsは実現可能。 >>293の言ってるキープレスが破棄されるってのは、イベント処理待ちが多すぎて、 せっかく届いたキーイベントが無視されるってわけ。 だからタイマー間隔が長くても、一回の処理が遅すぎると結局キーイベントを取りこぼす可能性大。
- 300 名前:デフォルトの名無しさん [04/11/15 17:23:05]
- エンドキーって終話キーとはちがうのですか?
- 301 名前:デフォルトの名無しさん [04/11/15 17:45:05]
- Windowsみたいにメッセージをメインループ側から受け取る事ってできるっけ?
「秒間30フレーム」は可能かもしれないけど、 タイマー使うメッセージループて時点で「1/30秒で回ってくるメインループ」は 不可能な気がするんだが。処理が追いつく前提でも。
- 302 名前:デフォルトの名無しさん mailto:sage [04/11/15 22:02:12]
- >>300
エンドキー=終話キーで、多分あってると思う。 >>301 確かに。出来たとしても、なんちゃって30fpsだな。w
- 303 名前:デフォルトの名無しさん mailto:sage [04/11/15 22:48:01]
- Smallフォント対応機種向けのBREWアプリで、
Smallフォントを使用する方法はあるのでしょうか? enumで定義されてる AEE_FONT_〜 らには、それらしきものはないので、無理かと思いましたが、 どこかでエクストラスモールフォントを使用する方法を 見かけたような気がして……。
- 304 名前:デフォルトの名無しさん mailto:sage [04/11/15 23:33:01]
- >>303
FAQだったはず
- 305 名前:デフォルトの名無しさん mailto:sage [04/11/15 23:35:50]
- スマンカッタ、FAQだけだとわけわからんな
開発支援サイトのFAQと端末仕様のpdfを参照すれ どれかのフォントと排他なんで使いづらいかもよ
- 306 名前:デフォルトの名無しさん mailto:sage [04/11/16 00:08:17]
- プログラミングガイド50ページ以降嫁
- 307 名前:デフォルトの名無しさん mailto:sage [04/11/16 00:43:23]
- >>304-305
ありがとうございます!助かりました。 既存フォントと差し替える形で使うのですね。 >>306 すみません、目視&検索で探しては見たのですが、 読み落としてしまったみたいです_| ̄|...○
- 308 名前:デフォルトの名無しさん mailto:sage [04/11/16 10:04:36]
- そうなんだよ、一度読破しておかないとダメなんだよ。
検索や目視でひっかからないことがおおい。 「どこかにそんなこと書いてあったなぁ」というのだけが頼り。
- 309 名前:デフォルトの名無しさん mailto:sage [04/11/16 12:53:34]
- >>301 >>302
マルチタスクの環境(BREWもカーネルがアプリの実行をスケジュールしてるから これにあたるよね)でなんちゃってじゃないFPS管理なんてできないでしょ。 なんちゃってでも、処理速度が追いついてれば概ねその通りに動くんだから普通は30fpsといえると思うが。 #まあ実際現状の端末では30fpsでまともな処理は難しいと思うが ちなみにBREWのコールバックって種類が多すぎ&統一性があまり無いから困るね。 さらにタイマーとか優先度が高いコールバックがあると、imageのデコード終了とかのコールバックは後回しになっちゃったりするし。 いっそのことVxWorksでも入れてくれると良かったんだが。
- 310 名前:デフォルトの名無しさん mailto:sage [04/11/16 14:46:52]
- 検証項目?のMALLOC後の戻り値を見るってやつなんですが
みなさまどういう実装してます? これ後から気づいて。。 いま char *a() { return (char *)MALLOC(128); } のような関数あるんですが。。どうしよう。。
- 311 名前:デフォルトの名無しさん [04/11/16 15:12:08]
- オールBREW端末にらんで〜日立ソフトBREW GUI開発ツール
www.itmedia.co.jp/mobile/articles/0411/16/news043.html 世界初、日立ソフトがクアルコムのBREWR3.1対応 携帯電話向けGUI開発支援ツールを販売 〜携帯電話端末への組込み型BREWアプリケーション開発の生産性を飛躍的に向上〜 www.hitachi-sk.co.jp/News/News287.html キタ━━━━(゚∀゚)━━━━!!!!
- 312 名前:デフォルトの名無しさん mailto:sage [04/11/16 15:13:28]
- 日立ソフト:アプリケーション開発フレームワークanyWarp
hitachisoft.jp/anywarp/
- 313 名前:デフォルトの名無しさん mailto:sage [04/11/16 15:18:53]
- k-tai.impress.co.jp/cda/article/news_toppage/21428.html
- 314 名前:デフォルトの名無しさん mailto:sage [04/11/16 15:23:20]
- >>310
ぬるぽだったら終了させればいいんじゃねーの?
- 315 名前:デフォルトの名無しさん mailto:sage [04/11/16 15:23:37]
- ITmedia記事より。
> 価格は年間使用権契約で、1ライセンスあたり100万円弱を想定している。 > キャリアや端末メーカーから、アプリケーション開発やコンサルティングを > 受託し、初年度5億円の売上げを目指す。 えーと...。
- 316 名前:デフォルトの名無しさん mailto:sage [04/11/16 15:24:32]
- >>314
ガッ
- 317 名前:デフォルトの名無しさん mailto:sage [04/11/16 15:39:09]
- KDDIのアプリ企画審査って厳しいんですか?
普通に動けばいいってもんじゃない?
- 318 名前:デフォルトの名無しさん mailto:sage [04/11/16 16:04:16]
- この流れで1分でガッされるのか・・・
- 319 名前:315=316 mailto:sage [04/11/16 16:09:19]
- すみません、315書いてリロードしたらすぐ上のカキコが目に入ったもので脊髄反射で...。
- 320 名前:310 mailto:sage [04/11/16 16:12:17]
- ぬるぽで終わらせたいんですが
メッセージ出してうんぬんかんぬん。。。だとかなり直さないといけないので どうしたものかと思ったのですが〜 やはり地道に書くしかないみたいですねー
- 321 名前:315=316 mailto:sage [04/11/16 16:25:36]
- >>320
今度もガッ よく分かりませんがエラー発生時にメッセージ出さずにいきなり終了はNGですよ。 メッセージ出してなんかボタン押されたら糸冬了ってシーケンスにしとかないと。 >>317 そりゃもう。
- 322 名前:デフォルトの名無しさん mailto:sage [04/11/16 16:28:22]
- 基本的に何処のルーチンに於いても、
エラー検出して異常終了(再開)できる出口用意しといた方がいいと思う。 つかそれが普通だと思う。 ぬるぽ検出したら、上の出口につなげるだけ。 MALLOC以外にも、動的にメモリ確保する箇所は山ほどできるぞ。 つーかpngなりjpeg使う時点でヒープ使うし
- 323 名前:310 mailto:sage [04/11/16 16:47:27]
- むー結構大変ですねー
とりあえず終了用のclassを改造してみます。 ありがとうございまっした
- 324 名前:デフォルトの名無しさん mailto:sage [04/11/16 16:52:05]
- >>322
(´-`).。oO(終了メッセージ出すとこでぬるぽしたらどうするんだろう)
- 325 名前:デフォルトの名無しさん mailto:sage [04/11/16 16:58:32]
- >>324
終了用ダイアログ(IDialogでは断じてない)は最初に用意しておく、が正解。 最初にそれすら確保できないようなケースは知らん。
- 326 名前:310 mailto:sage [04/11/16 18:15:40]
-
a = MALLOC(1); b = MALLOC(2); c = MALLOC(3); 例えばこんなコードでcでエラーが起きた場合、 aとbもFREEしないといけないんですよね。。。 めんどーひ
- 327 名前:デフォルトの名無しさん mailto:sage [04/11/16 19:15:09]
- BREWのFONTって、文字の横幅は固定なのでしょうか?
固定っぽいけど、それは機種依存になるのかな? 今後、それは変わらないのでしょうか? だれか教えてください ペコリ
- 328 名前:327 mailto:sage [04/11/16 19:22:50]
- 言葉足らずなので追記
可変長フォントなんてのがあり得るのか、知りたいのです。
- 329 名前:デフォルトの名無しさん mailto:sage [04/11/16 20:28:12]
- 固定ピッチかプロポーショナルかってことなら、固定ピッチだ。
また、LARGEは何ドット、NORMALは何ドット、という規定値もない。 具体的なドット数は機種によってバラバラなので端末仕様書で確認する。
- 330 名前:327 mailto:sage [04/11/16 20:58:32]
- >>329
ありがとう。 今後、プロポが導入されたとして、 デフォルトがプロポになると困るなぁ・・・って思ってたんだ。
- 331 名前:デフォルトの名無しさん mailto:sage [04/11/16 21:34:12]
- www.k-mb.biz/
- 332 名前:デフォルトの名無しさん [04/11/16 23:05:46]
- >>302
>エンドキー=終話キーで、多分あってると思う。 そうですよねthx。 でも検証のPDFのどっかのページに終話キーと エンドキーが同じページに書いてあるんでつよ 検証の方法も検証してくださいこのバグヤロー
- 333 名前:デフォルトの名無しさん mailto:sage [04/11/17 00:32:45]
- >>326
MALLOCを生で使うつもりなのか? やめておくべきじゃないかと。
- 334 名前:デフォルトの名無しさん mailto:sage [04/11/17 00:38:52]
- >>333
ゴムつけないとダメ?
- 335 名前:デフォルトの名無しさん mailto:sage [04/11/17 00:52:42]
- >>333
使わないか?
- 336 名前:デフォルトの名無しさん mailto:sage [04/11/17 01:25:43]
- >>334
ええ。何か(変な中断とか)あった時、(1つ1つ解放する)セキニンとるのは鬱陶しいしー
- 337 名前:310 mailto:sage [04/11/17 11:16:17]
- えーじゃぁゴム付きってどう書くんですか?
- 338 名前:デフォルトの名無しさん [04/11/17 12:25:19]
- >>337
typedef struct _MyData { char* hogedata; char* foodata; ... } MyDatal; アロケートした領域は↑みたいな奴(開始時は0で初期化)に覚えておいて、 ヤバイときにまとめて開放する関数を用意しておくようにするだけ。 実行途中で細かくアロケートが必要な場合は、 最初にまとめてMALLOCした中から自力で切り出すのも大アリ。 (実行途中で「メモリが足りません」なんてかっこ悪杉)
- 339 名前:デフォルトの名無しさん mailto:sage [04/11/17 13:11:57]
- 男なら生だろ!
- 340 名前:デフォルトの名無しさん mailto:sage [04/11/17 13:23:18]
- >>332
大半が使えないキーコード一覧見ると、「AVK_END」と「AVK_POWER」と別にあるよ。 エミュじゃ終話キー押したら即アプリ終了して、キーイベント発生しなかったけど。 端末仕様書には、この点何も書いていない。 つまるところ、「使うな」と言っているように思えるんだが… 使う必要あるの・・?
- 341 名前:310 mailto:sage [04/11/17 13:25:16]
- 大変参考になりました。ありがとうございます。
- 342 名前:デフォルトの名無しさん mailto:sage [04/11/17 14:15:27]
- >>340
プログラミングガイドのわかりにくい場所に書いてなかった? EVT_KEYのイベントをきっちりかけばいいはず
- 343 名前:デフォルトの名無しさん mailto:sage [04/11/17 18:42:19]
- byte a;
while(flg) { a = MALLOC(1); FREE(a); }
- 344 名前:デフォルトの名無しさん mailto:sage [04/11/17 18:58:56]
- >>343
∩___∩ | | ノ\ ヽ | / ●゛ ● | | | ∪ ( _●_) ミ j 彡、 |∪| | J / ∩ノ ⊃ ヽ ( \ / _ノ | | .\ “ /__| | \ /___ /
- 345 名前:デフォルトの名無しさん mailto:sage [04/11/17 19:30:18]
- 終話キーのキーコードはアプリに通知されないので
割り当てられたAVK_XXXの値を意識する必要はない。 終話キーを押した場合、アプリにはEVT_APP_STOPイベントとして通知されるので そこからアプリの終了処理を呼んでおしまい。 従ってEVT_KEYイベントで「終話キーが押された場合は…」といった処理は書かない(書けない)。 蛇足だが終話キーはキーリピートも発生しない。 >>344 パクッと行け!パクッと!
- 346 名前:344 mailto:sage [04/11/17 20:16:07]
- >>343
\ ∩─ー、 \/ ● 、_ `ヽ / \( ● ● |つ | X_入__ノ ミ a = MALLOC(1); でコンパイルエラー ・・・ 、 (_/ ノ \___ノ゙ / 丶' ⌒ヽ::: / ヽ / /::: / /へ ヘ/ /::: / \ ヾミ /|::: (__/| \___ノ/:::
- 347 名前:デフォルトの名無しさん mailto:sage [04/11/17 21:08:42]
- >>343
\ ∩─ー、 ==== \/ ● 、_ `ヽ ====== / \( ● ● |つ | X_入__ノ ミ それと無限ルークマ―― 、 (_/ ノ /⌒l /\___ノ゙_/ / ===== 〈 __ノ ==== \ \_ \ \___) \ ====== (´⌒ \ ___ \__ (´⌒;;(´⌒;; \___)___)(´;;⌒ (´⌒;; ズザザザ
- 348 名前:デフォルトの名無しさん mailto:sage [04/11/18 18:57:53]
- >>345
訂正ありがと。カンチガイしてた。 つーかまたBREWやりたいんだけど、しばらくできそうにないや
- 349 名前:デフォルトの名無しさん mailto:sage [04/11/19 12:35:15]
- BREW2.1で3Dをする場合は何が必要になるのですか?
OpenGL ESは3.0からですよね? 2.1だとI3Dを使うと思うんですが、どこにもstruct _I3Dの実体が見つからないのですが。
- 350 名前:デフォルトの名無しさん mailto:sage [04/11/19 13:19:43]
- ちとすまん、機種依存情報って何処らへんに載ってたっけ?
いつしかExcelの資料見た覚えがあるんだが…手持ちに無いOrz どうもA5505SAでIDISPLAY_MeasureText()が正常な値を返して来ないっぽいんだが。。。
- 351 名前:350 mailto:sage [04/11/19 13:42:07]
- 解決しますた。
どうも全角でも半角の幅が帰ってきてるっぽいんで、 半角のサイズ×2で誤魔化した。 他の機種は大丈夫だったかな… 何か情報あったらお願いします。
- 352 名前:デフォルトの名無しさん mailto:sage [04/11/19 15:05:34]
- >>349
I3Dをサポートする端末は国内に無い なお、I3Dは"AEEINTERFACE(I3D)"というマクロで定義されている OpenGL ESは別にBREWのバージョンとは関係なく端末でライブラリを実装すれば 2.1でも動く しかしいずれにせよエイチアイのMascot CapsuleがBREW上に実装されている以上 これらのライブラリを直接呼ぶ必要性は普通は無い
- 353 名前:デフォルトの名無しさん mailto:sage [04/11/19 18:42:02]
- >>352
つまり、現状で3Dを使ったアプリを作る場合は Mascot Capsuleを使うしかなようですね。 ありがとうございました。
- 354 名前:デフォルトの名無しさん mailto:sage [04/11/19 20:00:15]
- >>350
A5505SAでIDISPLAY_MeasureText使いまくりのアプリを 作ったけれど、そんなバグはなかったし、検証も通ったよ。 他機種でも同一バイナリで問題なく動いているしなあ。
- 355 名前:デフォルトの名無しさん mailto:sage [04/11/19 20:32:47]
- >>350
俺もA5505SAでIDISPLAY_MeasureText使ってたけど検証は通ったよ。 自分で実機では見てないけど変なとこあったら言われてるだろうし。 違うところに原因があるんじゃないかなぁ・・・。
- 356 名前:デフォルトの名無しさん mailto:sage [04/11/19 20:37:08]
- >>350
ついでだけどA5505SAの機種依存でIDISPLAY_MeasureTextのはなかった。
- 357 名前:デフォルトの名無しさん mailto:sage [04/11/19 22:55:16]
- まさかAECHAR型を渡してないってオチじゃないよな?
- 358 名前:350 mailto:sage [04/11/19 23:10:22]
- あれれ・・? ソース抜粋してみる。
int fontW, fontH; AECHAR str[] = {'※', '\0'}; //※…全角一文字 fontH = IDISPLAY_GetFontMetrics(a->m_pIDisplay, AEE_FONT_NORMAL, NULL, NULL); fontW = IDISPLAY_MeasureText(a->m_pIDisplay, AEE_FONT_NORMAL, str); DBGPRINTF("フォントサイズ:H=%d,W=%d", fontH, fontW); これだけなんだが、出力結果はH=18、W=9だった・・・ エミュ、A5506T(だったはず)では正常な値が帰ってくるのを確認済み。 なので機種依存かと思ったんだが・・・ プログラミングガイドの何処か見落としたヨカーン
- 359 名前:350 mailto:sage [04/11/19 23:20:47]
- 追伸。
strの定義からfontH求めるまで20行ほど省略してるが、この間変数には一切触れてない。 '※' を全角スペースや、他の全角文字も幾つか調べてみたが軒並みアウト。 ついでにIDISPLAY_MeasureTextExも試してみたが、結果は同じく9ピクセルが帰ってきた。 で、半角文字を入れても9ピクセルが帰ってきたんで、それを2倍して対応しますた。 ここで取ったフォントサイズを元にメッセージボックスやら何やら作ってたんで致命的だったのよTT
- 360 名前:デフォルトの名無しさん mailto:sage [04/11/20 00:39:33]
- >AECHAR str[] = {'※', '\0'};
チカラ抜けたよ… ダメに決まってんだろー
- 361 名前:350 mailto:sage [04/11/20 01:16:37]
- 何が悪いのかわかってないんで、ダメな理由教えていただけると…
- 362 名前:デフォルトの名無しさん mailto:sage [04/11/20 03:22:03]
- プログラミングガイドやAPIリファレンスで文字列描画について再確認するとともに
この辺を見るのもいいかと。 www.itmedia.co.jp/mobile/0311/14/n_bapp.html
- 363 名前:350 mailto:sage [04/11/20 13:48:54]
- あー、なるほど。
先の初期化方法だと、全角文字はバイト列逆に入力されちゃうのか。 いやむしろAECHARが逆に扱ってるというべきか… デバッグ出力でも確認できたんで納得した。 S5506Tもエミュもタマタマ動いていただけっぽいな。 ご迷惑おかけしますた。
- 364 名前:350 mailto:sage [04/11/20 13:50:34]
- 書き忘れ。
>>360,362 夜遅くまで付き合ってくれてサンクス。 助かったよ〜
- 365 名前:357=360=362 mailto:sage [04/11/20 14:40:32]
- >>350 なにかと面倒なことは多いけどがんばれー
- 366 名前:デフォルトの名無しさん mailto:sage [04/11/21 03:09:13]
- ttp://www.geocities.jp/messenger4nis/
- 367 名前:デフォルトの名無しさん mailto:sage [04/11/22 11:22:40]
- IMEDIA_SetAudioDevice(pMe->m_pMedia, AEE_SOUND_DEVICE_CURRENT)で
EUNSUPPORTEDが帰ってきます。 これを設定できなくても一応実機エミュともに正常っぽく音がなっているので ほったらかしてるんだけど、まずいですか? しかしSDKドキュメントのIMEDIA_SetMediaData()と IMEDIA_SetAudioDevice()の説明って何で同じなんだ・・・
|

|