kumaryu日記
2008-07-09 また久しゅう
_ 日記書きマシンが
日記しばらく書いてないのは、書くネタが無いとか、忙しくてぶち切れて日記を書く気にもならないとか、そういうことではなくて、単に日記書きマシンの問題。
N810のアップデートしたらmaemoCJKが入らなくなったので日本語\(^o^)/オワタ
日本語表示は出来るし、いろいろ細かい所が安定してくれたのでRSSリーダマシンとしては嬉しいのだが、日記書きマシンとして使えなくなってしまった。
前のファームウェアに戻す手もあるけど、そもそもAnthyでの入力もつらいんだよねぇ…。
で、他に掌サイズでキーボード付きで、RSSとか見れて、解像度がそこそこ高くて日本語入力できるマシンは無いかと探したら、myloがあった。
解像度低いもんだと思ってたがそれは古い方で、新しい方は800x480らしいのでN810と同じく十分高い。
日本語入力はソニーだけあってちゃんと予測変換してくれるみたい。
値段は3万ちょいで、この手の変なデバイスとしては安いくらいだ。
問題はBluetoothが無いことだわ。せっかくの京ぽん2が。
HotSpot1年無料とかついてくるらしいが、HotSpotも使えるところ少なくてあんまり当てにはならなそう。まあ京ぽんでのBluetooth接続も京急のスピードになかなかついてこれないみたいで当てにならなかったが。
W-ZERO3とかもいいんだが、この前京ぽん2にしたばっかりだからまだ機種変できないし、WindowsMobileはもっさりしてそうという偏見を持っているのでちょっとパス。
うーん、mylo買う気になってしまってるなぁ。
_ [OpenGL] GeForce vs OpenGL
Windowsで、GeForce*1使ってて、マルチコアだったりマルチCPUだったりする時にドライバにスレッド化した最適化という不思議な名前のオプションが出るんだが、これが有効になっていると酷い動きをする話。
オンに設定しているともの凄く遅くなったりするという話は聞いていたので、自動とかにしといたらどうなんのかと思ったらなぜか変なところでINVALID_VALUEとかいうエラー。
オンにしたらエラーは出ないけど酷く重い。オフにしたら倍くらいfpsが出た。
むう、自動はオンより性質が悪い可能性があるな。
なぜかCランタイムのエラーとか出るよー、という報告を貰っていたが、後で確認したところいずれもGeForceだったので、これが原因の一端である可能性があるな。
で、以前opengl.orgのフォーラムでみかけた情報に従って、OpenGLのコンテキスト、つまりSDLのウィンドウを作る前にSetProcessAffinityMaskで1を設定してみた。1コアに固定しちゃうのね。
これで試してみたところオフにしたのと同じ状態になったっぽいぞ。
ちゃんと動くようになっただの60fps出るよとか嬉しい報告を貰ったので、とりあえずこれで大丈夫そうだ。
2コア以上使うところも無いからそのまま1にしておいたので、コンテキストを作った後に元に戻したりは試してない。元に戻してもちゃんと動いてくれると、将来的にマルチスレッド使おうとした時に嬉しいんだが。
しかし本当にスレッド化した最適化って何やってるんだ…?まともに動かないならやめてくれればいいのに。
*1 Quadroはどうだろう?
_ [OpenGL] ゲーム動かないの
動かないと言われた報告について。
Intelの865GMとかなんとかでテクスチャパラメータ指定時にINVALID_VALUE。OpenGL1.2はあると言いやがるのに何故かテクスチャパラメータにGL_CLAMP_TO_EDGEを指定するとINVALID_VALUE。
嘘吐かれるとほんとうにどうしようもありません。あとCLAMP_TO_EDGEも使えないと本当に厳しいです*1。スルー。
GeForce4MX440とかでOpenGL1.2が無いと言われる。ドライバがちゃんと認識されてなさげ。環境の問題みたいで、調べた感じではGeForce4MXでも最低限の機能はありそうなので環境の調査をしてもらって様子見。
Mobility Radeon 7500でOpenGL1.2が無いと言われる。ドライバはちゃんと入ってるとのことだが、なんでだろうなぁ?しかし調べてみたらVertexProgramも使えないのでどちらにしてもダメそうだったので断念。
SiSのなんだかのチップセット内蔵でVertexProgramが無いというエラー。これもどうしようもないです。グラボ挿して。
とりえあず拡張チェックが通らなかった時の例外にGL_VENDORとGL_RENDERERを表示させるようにしてみたので、今後報告貰った時の解析が多少楽になると思われる。
あ、拡張チェックエラーだけじゃなくて普通にOpenGLのエラーの時も出した方がいいかもな。
あとエラー出すのはともかく、ある程度ユーザーで何が悪いのか判断できるようにドキュメント書かなきゃねぇ。大変だわ。
*1 使えないとは思えないんだけどなぁ、なんだろう