Manuke Station BBS

RSS
投稿者 題名 内容 URL

SetPixel

投稿者: apaslothy 投稿日:
VistaもSP1でかなり安定してきたと聞いていたのですが,こんな基本的なAPIの不具合が
放置されていたとはビックリですね。
こうして放置され続けているということは,あまり使われていないAPIなのでしょうか。
あるいは今回のManukeさんの対応のように,問題発覚と同時に開発者が代替機能で対応
してしまうから,積極的に修正する必要が無くなってしまうとか(;^^。

Vista/非Aero環境でSetPixelが使えない?

投稿者: Manuke 投稿日:
会社のおしごとで担当しているプログラムに、先週不具合報告がありました。
Windows VistaのAeroをオフにすると、画面が正しく描画されないとのこと。
調査してみたら、SetPixel(点を描くAPI)を呼んだときのX座標を512で割った余りが
256~511の範囲にあると、描画が行われないということが判明しました。
(ウィンドウ直書き時のみで、ビットマップに対してのSetPixelは大丈夫そう)

# 「Aeroをオフ」と言うより、恐らく「デスクトップコンポジションをオフ」だと想像。

どうやら自分のプログラムが原因ではないみたいでした。
GeForceとIntelチップセット内蔵GPUの両方で再現するので、ビデオカードドライバのせ
いでもなさそう。
そう思ってちょっとググってみたら……これ、既知のバグだったようです。
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=3228018&SiteID=7
とか、
http://gorry.haun.org/diary/direct.cgi?2007121402
とか……。

会社での再現率100%なので、ここまで酷いバグが放置されていることに驚きました。
SetPixelはデバイスコンテキストに点を打つ基本的なAPIですから。
しかも、ノートPCのようにマシンが非力でAeroを実行できない場合、Vista Home Basic
のようにAeroがそもそもAeroをオンにできない場合には、ユーザ側で対処の方法が存在
しません。
Vista発売から一年半にもなろうとしているのに、マイクロソフトはこんな重篤なバグを
どうして修正しないんでしょうか?

担当の同僚に頼んでマイクロソフトに質問してもらったら、
・以前にも同様の報告は受けていた。
 (MS側のサポートの人は当初、もう直ってると思っていた模様)
・現状でも再現することを確認した。
・Aeroをオンにする以外の回避方法は把握していない。
・再度報告を上げ直したが、いつ直るのかは確約できない。
という素敵な状態に……。orz

仕方ないので、そのプログラムでSetPixelしてる箇所は1x1ピクセルサイズの矩形塗りつ
ぶしに置き換えて対処しました。
なんだか凄く悲しい気分になりましたが(笑)、マイクロソフト側の対応がいつになるか
分からない状態では、こちらで対策を取るしかないので。
お客さんに「Vistaのバグだから諦めてください」なんて言えません(^^;)

と言うわけで、Windowsのプログラムを開発されている方、ご自身のプログラムでSetPixel
を呼び出していないか確認されることをお勧めしますー。
とりあえず、ウチのサイトで配布しているソフト(『X88000』とか、『C.H.A.O.S.』と
か)は大丈夫でした。
あと、これからVistaマシンを購入検討されている方、Aeroが動かないマシンはできるだ
け避けた方が良いかと思います。
特に最近流行のNettop/Netbookのように非力なマシンは、ダウングレード権を使ってXP
にした方が何かと幸せかも(^^;)

Re: 『C.H.A.O.S.』アップデート有難うございます

投稿者: Manuke 投稿日:
To 砂さん
> 初めまして、砂という者です。

はい、初めまして。

> 久しぶりに「秋桜の空に」を思い出し、
> お世話になった『C.H.A.O.S.』のページに飛んできたら、
> アップデートされていて驚きました。
>
> 見た瞬間に「おおーっ!(嬉)」と声に出してしまったほどです。
>
> こういうことを地道にされている方を見ると、
> 素直に格好いいと思ってしまいます。

あぅあぅ、ありがとうございます。
『C.H.A.O.S.』はあくまで裏方的存在ですが、そうおっしゃっていただけると頑張って
作った甲斐があります。

> 今後も頑張ってください。
> 陰ながら応援しています。

どうもです~。
ちょっと使い勝手に関して改良したい点等がありますので、近いうちに更新するかもし
れません。(予定は未定ですが(^^;))
その際にはまた使っていただけると嬉しく思います。

『C.H.A.O.S.』アップデート有難うございます

投稿者: 投稿日:
初めまして、砂という者です。

久しぶりに「秋桜の空に」を思い出し、
お世話になった『C.H.A.O.S.』のページに飛んできたら、
アップデートされていて驚きました。

見た瞬間に「おおーっ!(嬉)」と声に出してしまったほどです。

こういうことを地道にされている方を見ると、
素直に格好いいと思ってしまいます。

今後も頑張ってください。
陰ながら応援しています。

それでは。

オモイオモワレフリフラレ……

投稿者: Manuke 投稿日:
京都アニメーション版『CLANNAD』第7巻を入手しました。
いよいよ学園編も終盤に差し掛かってきましたね。
相変わらず空気を読まずに登場する風子がグッドw
そして有紀寧は相変わらず空気でした(^^;) いや、役柄としては良いポジションではあ
るのですけど、準ヒロインの立場がない……。

20話アバンタイトルは、原作のオープニングが入る箇所の再現でした。
さすがにTVアニメでオープニングをここまで引っ張るような無茶はできませんしねー。
(原作をプレイしたときは渚シナリオを最後にしていたので、あんな場所にオープニン
グがあったことには驚きました(笑))

19話~21話は渚が可愛い場面も多く、ようやく真ヒロインの面目躍如という印象です。
草野球での暴露シーンとか(^^;)

さて、いよいよ次回は学園編の最終巻ですね。
追加エピソードで『智代編』なるお話が収録されるようですが、果たしてどういった内
容になるのか……。
(予告を見る限り、智代ルートの学園編部分みたい)
取りあえず、『智代アフター』には入らないことを望みます(^^;)

ヒトデヒート!

投稿者: Manuke 投稿日:
京都アニメーション版『CLANNAD』第6巻を入手しました。

今回は芽衣ちゃん登場から3on3、体育館おまじない、そしてフラグ消しの回ですね(笑)
こうして見ると、杏がかなり優遇されているような気がします。要所要所で重要な役割
を果たしてますし。

しかし今巻の白眉は、やはり18話でしょうか。
藤林姉妹が泣くシーンも心を動かされますが、智代がふっと悟る辺りも個人的には好き
です。なんだかとても智代らしい印象でした。

さて、次はようやく朋也の古河家入りですね。
色々イベントをこなしていたせいか、若干原作よりも遅くなっちゃってますが、そこは
仕方ないかも(^^;)

# DVDのレーベル面が、土偶を手にする芽衣ちゃんだったのには吹きましたw

パティシエなにゃんことか、アオイシロとか

投稿者: Manuke 投稿日:
本日発売された、『ティンクル☆くるせいだーず』のムックを買ってきました。
\980の有料体験版ですが(^^;)、『パティシエなにゃんこ』の製品版がまるまる入ってい
るのは太っ腹ですねー。
ぱじゃまソフトさん的には、『パティにゃん』の商品寿命は尽きたと考えてらっしゃる
のかな?
いずれにしても、個人的に好きなソフトの一つなので、ファンが増えてくれると嬉しい
な、と思います。
あと、PnyanVChgは特に支障なく動作する模様。製品版と完全に同じものみたいです(^^;)

それから、サクセスさんのPS2向け伝奇アドベンチャー、『アオイシロ』もぽつぽつと始
めてます~。『アカイイト』の系統ですね。
お話自体は面白いのですけど、PS2がプラットフォームというのはやや難ですね。
アクセス遅いですし、あるシーンではDVDドライブが激しくシークして、壊れるんじゃな
いかと心配になりました(笑)
とは言え、内容はかなり期待が持てそうな展開ですし、お遊び要素もたくさん入ってい
てお得です。(ほぼ全員の発売日ボイスが入っているのは驚いた(^^;))
結構ボリュームがありそうなので、じっくり進めていこうかなと思ってます。

Re: 最近のLinux

投稿者: Manuke 投稿日:
To apaslothyさん
> Windowsでは古いソフトの互換性を比較的大事にしているのに対して,Linuxの方は
> 新しいものを積極的に取り入れると同時に,古いものはビシバシと標準から外して
> いくような印象を受けますね。

そうですよねー。
特に共有ライブラリがデフォルトでインストールされないのは困ります(^^;)
「ソースがあればなんとかなる」と考えているのかな。
でも、往々にして……。orz

> 少し前にFedoraCore7を試してみたのですが,X88Kをビルドしようと思ったらGTKは
> 2しか入ってないし,GCC3以降だとうまくコンパイルできないしで,実行ファイルを
> 作成するだけでも一苦労でした。

ほったらかしですみません(^^;)
GCCはtypenameやthrow絡みで旧バージョンよりも厳格になった部分が特に引っかかって
しまいますね。近いうちにこの辺りも更新せねば……。

> そういえば「C.H.A.O.S.」のドキュメントで標準フォントとされているwatanabe
> フォントも今では全然使われなくなってしまいましたねぇ

Watanabe明朝は著作権がらみでポカがあって以来、デファクト・スタンダードの位置か
ら退いてしまいましたね(^^;)
今後はIPAフォントあたりが主流になっていくのかな?
いずれにしても、「これさえ指定しておけばどの環境でも問題なし」みたいなものは出
てきそうにないです。
そう言う意味でも、Pangoにフォント管理はお任せして、デフォルト値は"Serif"あたり
にしてしまうべきなのかもしれません。

最近のLinux

投稿者: apaslothy 投稿日:
Windowsでは古いソフトの互換性を比較的大事にしているのに対して,Linuxの方は
新しいものを積極的に取り入れると同時に,古いものはビシバシと標準から外して
いくような印象を受けますね。

少し前にFedoraCore7を試してみたのですが,X88Kをビルドしようと思ったらGTKは
2しか入ってないし,GCC3以降だとうまくコンパイルできないしで,実行ファイルを
作成するだけでも一苦労でした。

そういえば「C.H.A.O.S.」のドキュメントで標準フォントとされているwatanabe
フォントも今では全然使われなくなってしまいましたねぇ。

『C.H.A.O.S.』バージョンアップ

投稿者: Manuke 投稿日:
久々に『秋桜の空に』実行プログラム『C.H.A.O.S.』をアップデートしました。
(Ver. 1.06)
すずねえルートでメッセージ番号が重複している箇所があり、初子の台詞が表示されな
いという不具合に対応してます。
(Hazeさん、ご報告ありがとうございました)
それから、ついでに最近の標準的インターフェースとして、スクロールホイールでのメ
ッセージ送り及び履歴モード表示に対応しておきました。

しかし、Linux版を作り直していて思ったんですけど、そろそろロケールの標準はUTF-8
になりつつあるのかな。EUC-JPから変更した方が良いのかもしれません。

あと、GTK2.0にも移行すべきなのかもしれないんですけど、フォント周り(Pango)がか
なり変わってしまっているので、一筋縄ではいかなそうです。
特にフォント名の扱いがXLFDじゃなくなっているのが大問題(^^;)
ファイル互換取れないですよ……。