10/10/08 02:12:17
>>298
あと>>261や>>291だと、時間が基準になってないから
思ったようなきれいなカーブ/線を描かないと思う。
設定するボリュームは、経過時間/フェード時間 を基準にするべき。
double total, fadetime;
clock_t start, end;
total = 0;
fadetime = 2.0f; //フェード時間(秒)
while (total < fadetime)
{
start = clock();
pDSData->SetVolume(DSBVOLUME_MIN * total / fadetime);
Sleep(1);
end = clock();
total += (double)(end - start) / CLOCKS_PER_SEC;
}
pDSData->SetVolume(DSBVOLUME_MIN)
こんな感じ?Volume計算式とかSleepの値は調整してね。
環境なくてちゃんと試してないけどご容赦を。