私はOpenGLSuperbible5thedを進めています。画面に回転トーラスを表示するサンプルコードがあります。プロセッサの速度に関係なくローテーションが行われるようにするため、ローテーションの量は時間に基づいています。私の質問:以下のサンプルコードで、正しい時間がメソッドに渡されることを「確実に」するにはどうすればよいm3dRotationMatrix44()
ですか?つまり、その後rotTimer.GetElapsedSeconds()
、OSが他のタスクで動作し、その後に戻るのを妨げるものは何m3dRotationMatrix44()
ですか?または、これはチュートリアル用の基本的なタイミング手法ですか?その場合、他にどのような方法がありますか?
// Set up time based animation
static CStopWatch rotTimer;
float yRot = rotTimer.GetElapsedSeconds() * 60.0f;
// <initialize some stuff>
// Create a rotation matrix based on the current value of yRot
m3dRotationMatrix44(mRotate, m3dDegToRad(yRot), 0.0f, 1.0f, 0.0f);