過去雑記

旧鯖時代の雑記です。新しいの。リンク切れに注意。


2007: 12345678910
2006: 123456789101112
2005: 123456789101112
2004: 456789101112

過去雑記

2007/6/7(木)

4万リロード突破03:34:39

最近OpenGLとかいじってみてるのですが、資料少なすぎです。Direct3Dのほうが使いやすい予感。まぁどちらもポリゴン表示するだけで動作させようとなるとイマイチ分からないわけですが。

コメントはありません。

2007/6/11(月)

散財02:25:35

ひめなカメナ#2買ってきました。なのはがどこにも売っていません。Asはあるのに何故だ!

コメントはありません。

2007/6/15(金)

時は金なり04:10:21

なんというか最近楽しいといえるコードを書いてない気がするのですよね。そろそろあれもいじるところがなくなってきたので落ち着くところに落ち着かせて新しい何かをしたい衝動に駆られる所ですが、いざ物を作ろうとすると必要なクラスがあれとあれでたくさんで、あーもう!

VistaもリリースされWPFのドキュメントも日本語化されたのでGUI周りはいじってみたいところですけども環境が。Vistaはあれですね。ビデオカード、というかメモリの要求が厳しいです。UXGAなら128MBあれば動くらしいですけど、この手の動作環境というのは当てにならないものなので気分的に256Mはほしいところです。そうするとビデオカードの増設が必要になるわけで。色々と面白そうなものはあるのに手を出せない現実。

まぁ目下OpenGL使って見栄えのいいものをひとつこさえなくてはいけないので色々と小細工をしているところですがこれもどうなるやら。それが終わると次はネットワークと3Dですか?よく分からないデバイス使うよりもよほど現実感がありますが、まー現状を鑑みるに無謀な企画です。

コメントはありません。

2007/6/18(月)

現実逃避気味に更新03:35:52

今更ながらWPFが3Dをサポートしていることに気がついたわけですよ。いやサポートしていること自体は知っていたのですが。XNAはゲームにくっつきすぎているから、普通のアプリからは使いにくいからだめだと前々から言っていましたが、もしかしてマネージドな世界ではビジネス→WPF, ゲーム→XNAの流れになって行くのでしょーか。パフォーマンスを求める世界ではC++は健在ですし。しかしこれは想定していませんでした。というかManaged DirectX 1.xの問題としてランタイム問題があるのですよね。以前ほどにではないにしろ、やはりまだ残っています。そこらへんをうまくまとめてDirect3D10に対応したManaged DirectXがリリースされると期待していたわけですが、こうなってくるとXBOXがこけない限り望み薄そうです。まぁ.net 3.5はCLR2.0らしく後数年は戦えるので目下目をつぶることにします。

それはそうと話は変わって、らきすたの新しいムックの予約が土曜までだったそうで。まぁこの手のものはその手のショップに行けばおいてあるものなのでそんなに心配していません。付属のフィギュアは以前販売されたものより数倍原作準拠になっているようですが、2種類同時発売ですか。そしてお値段3k弱あわせて6k。正直そこまで貢ぐ気にはなれませんね。おまけはいいから書籍の部分だけ売ってください。

コメントはありません。

2007/6/23(土)

山をひとつ越えた00:35:31

とりあえずでっちあげたGLのプログラムは悪くない評価だったのでまぁ成功ですか。次は3Dネットワークゲームをどこまでいけるか見極めを行わないと。現状だと冠についている3Dは無理かな?

コメントはありません。

2007/6/24(日)

散財01:38:50

ローゼンメイデン8巻かってきました。薄い、薄すぎです。最終回が掲載された月間都市伝説は書店で見かけなかったので出版してくれただけありがたいと思うべきなのでしょうか。

コメントはありません。

2007/6/26(火)

デスクトップダブルクリックで通知領域にアクセスという可能性03:36:05

デスクトップがある程度広くなってくると通知領域へのアクセスが非常にめどくなります。何せデスクトップの端にあるわけですから。たまにアクセスするならいいのですが、頻繁にアクセスする場合は耐えられません。そこでホットキーなど使ってどうにかしようと考えるわけですが、マウスから手を離したくないわけですね。某アプリに実装されてたデスクトップをダブルクリックするというショートカットはこの辺りよく考えられていると思います。目から鱗でした。ぐぐって見ると結構なアプリで実装されているのでどなたが考えたのか分かりませんが。ただこれも欠点があります。ダブルクリックという性質上1つのアプリにしか割り当てられないんですね。

そこでダブルクリックで通知領域のアイコンを表示すればいいんじゃないかと思い作ってみました。要.net Framework2.0、XP P2で(一応)動作することを確認しています。最低でも2k以降のNT系OSである必要があります。Vistaだと権限周りで問題出るかもしれません。環境ないので未確認。テストアプリなので動作保障、サポートなど一切しません。自己責任で。付属のソースコードのライセンスはNYSLです。ご自由に。

操作方法は、起動後ダブルクリックでウィンドウが開きます。アイコンを作るのがめどかったので通知領域に常駐したりはしません。非アクティブになるとウィンドウは消えるはずです。表示されている32x32アイコンへのマウスメッセージは対象のウィンドウへと転送されます。つまりアイコンの上で右クリックするとそのアイコンのアプリケーションの右クリックの動作が実行されます。終了は×ボタンでウィンドウを閉じてください。めどかったので特にかっこいい実装は行っていません。多重起動防止も特に行っていません。

以下技術的な話。通知領域のアイコンをキャプチャする方法はドキュメント化されておらずたぶんありません。OSのバージョン如何によっては正常に動作しないことがあります。ていうか自分でもなんで動いているのか分かりません。プロセス空間越えたらアイコンハンドルは使えない気が。。。とりあえず、一部のアイコンは描画できないのでアプリケーションのアイコンを引っ張ってくるようにしてみました。

Formのアクティブ/非アクティブはいろいろと挙動が怪しいです。一応正しく動いているように見えますが、たまにActivate()に失敗してタイトルバーが点滅します。

int timeout;
SystemParametersInfo(SPI_GETFOREGROUNDLOCKTIMEOUT, 0, &timeout, 0);
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, 0, 0);
SetForegroundWindow(window);
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, timeout, 0);

上記のコードで抑制できますが、SystemParametersInfo()を呼び出すのはどうよ、ってことでやっていません。AnimateWindow()をコメントアウトしていますが、AnimateWindowとか使うととたんに動作しなくなります。フェード効果つけようと思ったら楽しないで自前で処理したほうがいいのかもしれません。

コメントはありません。

2007/6/28(木)

母板復活23:41:36

復活しました。しかしアナログVGAのノイズぽいのがなんか気になる。。。前は(数日しか使ってませんが)気にならなかった気がするので慣れかなぁ。

コメントはありません。

2007/6/30(土)

さらさら01:35:04

あんなとこで踏むなんて迂闊。あれは3Dでいくらしいです。火を噴く予感がします。だれか3Dのできる子を。。。

コメントはありません。

goto Top

Copyright(C)方位記号