2008年9月8日月曜日

某ゲームであった画質設定

以前遊んだあるゲームで、FrameRateの設定がx1~x4まであるゲームがあった。
マニュアルに説明が書いていなかったために、試しにそれぞれを設定してみたところ、

1だと標準の速度
2だと速度1/2
3だと速度1/3
4だと速度1/4

という現象が起こったことがあった。

ソフトはそれよりも更に数年前に発売されたもので、マシンスペックは明らかに推奨を上回っていたのにFrameRateを上げると半分以下の速度しか出ないというのはありえないので、調べてみたら、DirectDrawに以下のような機能が存在することを知った。
おそらくそれだったのだろう。
FrameRateってモニタのFrameRateってことか。

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
Flip関数には
DDFLIP_INTERVAL2
DDFLIP_INTERVAL3
DDFLIP_INTERVAL4

という定数を引数として渡すことが出来る。

これらは、Vsyncを2~4回待ってから描画をするという意味を持つ。

2008年7月10日木曜日

フルスクリーンでゲームをやるとフリーズ

ある日突然、フルスクリーンでゲームをやると数秒後にフリーズするようになった。
ゲームを問わず再現するので、グラフィックボードでも故障したかなと思ったのだが、
数日前に電源を一度外した事を思い出し、その時にどこか接触不良でも起こしたかなと思って、
グラフィックボードを挿し直したらどうやら直ったっぽい。

マシンの買い替えも少し考えたが、早まらなくて良かった。
こういう症状もあるんだな。

2008年5月29日木曜日

Visual Studio 2005から2008 に移行しようとしたら問題発生

iTunesを使ってCD情報をcdplayer.iniに出力するソフト
のプロジェクトを2008に変換して、コンパイルし実行したら、
cdplayer.iniを出力する段階でなぜかERROR_ACCESS_DENIEDが発生するようになった。

ソースはまったく手を入れていないし、バックアップされたプロジェクトファイルで2005でコンパイルするとエラーにならない。

ためしに、2008の「リンカ」-「マニフェストファイル」-「UACの実行レベル」でasInvokerをhighestAvailableに変更すると、
一応動くのだがフォルダがリダイレクトされないで、c:\windows\に出力してしまう。

最終的に、
「リンカ」-「マニフェストファイル」-「ユーザー アカウント制御 (UAC) を有効にする」を「いいえ」
にしたら2005と同じ動作になった。

2008年4月1日火曜日

.NET Compact Framework 2.0でサウンドプレーヤーを作ろうとしたが

ストリームサウンドを扱うクラスが無いらしく、C言語を使うしかないという結論に達した。

2008年3月23日日曜日

iTunesで曲を買ったらM4Aだった

コカコーラを買ったらiTunesで曲をもらえるというキャンペーンをやっていたので、
これを利用してiTunesのアカウントを取得して曲を購入してみた。
購入したのは2006年リリースの150円の曲で、購入したファイルを見てみると
拡張子がM4Aで、DRMはかかっていない様子。
iTunes以外のプレーヤーでも再生できるし、他のPCにコピーしても再生できました。
これは普通にありえることなのだろうか?

15:00追記:購入した曲は150円でもiTunes Plus配信のものでした。だから普通です。

2008年2月25日月曜日

レスキュー用LiveCD

UBCDとかGpartedとかいくつか試してみて、今まではSystemRescueCDを使ってきたが、
最近知ったClonezilla-SysRescCDがよさそうだ。

・Clonezilla-SysRescCD
SystemRescueCDにClonezillaを統合したもの。
・Clonezilla
PartImageを、パーティションだけじゃなくてディスク全体のバックアップも出来るようにしたツール。

2009/12/15追記
Clonezilla-SysRescCDは開発が止まったっぽいので、再びUBCD(v5.0rc1)に戻った。
4.1.1に比べて、かなり使いやすくなっている。
特にParted Magicの取り込みが良い。

2008年2月9日土曜日

自作ジャンクプログラム(2)iTunesを使ってCD情報をcdplayer.iniに出力するソフト

iTunesを使ってCD情報をcdplayer.iniに出力するソフト
2009/12/15 リンク先変更
http://sites.google.com/site/eleproxxx/cdplayer.inifromitunes.zip?attredirects=0&d=1

これでPlayer入れなくても済みそうだ。

------------------
変更履歴
    iTunesが起動した状態で待つようにした    2008/4/4

    コンパイラをVisualStudio2008に変更
    前回の変更が機能していなかったのを修正した
    出力するサイズが200バイトを超えていると正しく出力できていなかったのを修正(最大2000文字に)
    Cdplayer.iniへ出力する際にエラーになったらエラーを表示するようにした    2008/05/28

    2009/3/11
        複数枚組みはタイトルにディスクナンバーを入れるようにした
  
    2009/5/19
        OSとiTunesのディスク検出枚数が一致しなかったときのメッセージを変更
    2009/10/21
        OSとiTunesのディスク検出枚数が一致しなかったときのメッセージを修正
    2010/1/14
        コンピレーションCDに対応
    2010/12/13
        コンパイラをVisualStudio2010に変更(これにより対応OS変更)
        CCCDに対応
    2012/3/6
        読み込み処理を続けるか尋ねるようにした。
     2012/11/8
        コンパイラをVisualStudio2012に変更(これにより対応OS変更)
    2016/9/11
        コンパイラをVisualStudio2015に変更(これにより対応OS変更)
        プロジェクトとソースをVisualStudio2015に合わせて修正
        iTunesが認識したCDドライブをアプリケーション側で読み込めない場合があるのを修正