はじめまして、コガラシといいます。
Bytebufferは文字通りバイト単位のものです。
Java標準の配列とは単位が違うので間違って指定していたりしませんか?
一般的にfloat型は4byteなので、要素数の4倍を指定すべきです。
またBytebufferはJavaの管理外に確保されるので、ガーベジコレクションや例外処理などJavaの機能の恩恵を得られずエラーハンドリングなどがし辛くなります。
参考になれば幸いです。
--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。
すみません、お力になれそうにです。
それと、さきほどは少し失礼な発言でしたね、すみません。
マーケットの動作報告を見た感じだとarrowsがダメだったりとまばらなのでチップ依存というのは低そうですね。
自分の中で考えられるものとしては、ネイティブのヒープが少ない端末(少なく設定されている)だとダメなのかもしれません。
実際に機種ごとにどのくらい差があるのかはちょっとわかりませんが。
参考になれば幸いです。
動作確認の方させていただきました。
logcatの方はすみませんが確認してないです。
確認を行ったのは以下の通りです。
IS03(Froyo)
ISW11M(gingerbread2.3.4)
IS11S acro(2.3.4)
ISW11Mは正常にモデルが表示できました。
デュアルなのでかなり起動時の読み込みは早かったです。
IS11S acroに関してはフリーズしました。
フリーズのタイミングは読みこみの表示が消えたらでした。
フリーズ中にサウンドが再生されっぱなしのままでした。
ハードキーからの応答なしで、バッテリーを外して対処しました。
IS03は読み込みがキャンセルになったのか、動作はしているんですがモデルが表示されませんでした。
ドライバーのバグとは泣
やはりarrowsZは十分な検証が出来なかったんでしょうね。
acro含めXperia系列なんですが、基本的にはOS部分はカスタマイズをしないようにしているみたいで標準環境だと動かないのかも。
確かGalaxySもダメなんでしたよね?フラグシップなモデルですし。
やはり種類がこう豊富すぎて検証も難しいですね。
メーカー側のカスタマイズでもかなり変わってきますし
2012年2月14日23:34 Kazuhiko Kobayashi <koba...@pscnet.co.jp>:
--
┏┏┏┏━━━━━━━━━━━━━━━━━━━━━━━━
┏╋┏ アーツカレッジヨコハマ
┏┏■ ゲームクリエイター学科 ゲームプログラマーコース
┏ 堀松 直也 < kogaras...@gmail.com >
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━
> Android OSのフリーズ問題ですが、どうもGPUのドライバーの不具合がかなりの割合を
> 占めるのではないかという気がしてきました。
>
> それにしても、たった1つのdiscard文でOSごとフリーズするとは恐ろしいです。
ビデオドライバの類は、動作速度などを理由に比較的「高い権限を持って」
動作することが多いです。これはつまり「不具合があったときに
システムによる保護機能が効きにくくなる」ことでもあります。
つまり、ビデオドライバのフリーズやクラッシュ=OSのフリーズや
クラッシュとなるケースが多いです。
OpenGL ESは、ビデオドライバの機能の中でも特に、Java・dalvik・
linuxによる様々な保護を飛び越えて直接ハードを操作できる機能の
ひとつです。そして2.0についてはまだ比較的新しい規格であるため
まだ「枯れて」おらず、テストスイートもあまり充実していないのか
ドライバ不具合が見つかりやすいようです。
--
Hiroaki GOTO as "GORRY" : 後藤 浩昭
EMAIL: gorr...@gmail.com