DXライブラリ 総合スレッド 2008at GAMEDEVDXライブラリ 総合スレッド 2008 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト104:名前は開発中のものです。 08/11/15 21:38:19 zVe3F0+t >>100 「ScreenFlipを使う前と後の時間差を利用してる方法」ってのを普通に解釈したらリフレッシュレートに依存せずに一定になるよ。 ScreenFlipの待ち時間に関係なく、1フレーム(1ループ)の差時間から移動距離を割り出せばok。 ただし、ゲーム画面がアクティブでなくても実際に時間は経過してるので、ゲームに戻るとその分進む(進んだ)ことになる。 これを回避するなら、ゲーム内で独自にインクリメントカウントを設置し、そこから移動距離を割り出せばok。 ゲームプログラミング独特の考え方だね。 105:名前は開発中のものです。 08/11/15 21:40:57 zVe3F0+t >>101 ブラウン管テレビは29.97fpsだよ。 106:名前は開発中のものです。 08/11/15 21:41:23 56rIt8Hu このティアリング(ちらつき)をさせないためにはどうすればいいか? これが「垂直同期信号待ち」であって、つまりは ディスプレイが画面全体の書き換えが終わるまで、 次の描画処理をしないで待ってるってわけだ。 これがScreenFlipではデフォルトで行われてる。 だからScreenFlipを使うと速度が一定に保たれる……のだが、 「画面の点滅は60分の1秒」と言ったが前述したが、これが要するにリフレッシュレートの事。 つまりこの速度をPC側で自由に変更できたりする。 リフレッシュレート60の場合はScreenFlipは60分の1秒経つまで待つわけだが、 リフレッシュレート70の場合は70分の1秒しか待ってくれない。 その分ゲーム速度は速くなってしまうわけだ。 (もしプログラム処理自体が重くて、70分の1秒で終わらなかったら 70分の2秒、つまり35分の1秒かかるわけで、逆に遅くなる) 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch