提示コードですが1000倍することによってミリ秒を取得してそれを使ってフレームレート制御してwait変数の数値の分プログラムを停止するコードを作りたいのですがなぜかint t の値が段々増えてしまし困っています。何が原因なのでしょうか?
cpp
1 2//待機フレームを計算 3void FrameWork::Window::FrameUpdate() 4{ 5 6 if (count == 60) 7 { 8 int t = ((int)(glfwGetTime() * 1000.0f)) - startCount; 9 10 11 12// std::cout << "glfwGetTime(): " << (int)(glfwGetTime() * 1000.0f) << std::endl; 13// std::cout << "startCount: " << startCount << std::endl; 14 // std::cout <<"t: "<< t << std::endl; 15 16 wait = t / 60; 17 //std::cout << wait << std::endl; 18 //startCount = 0; 19 count = 0; 20 //glfwSetTime(0); 21 } 22 23 24 25 if (count == 0) 26 { 27 startCount = ((int)(glfwGetTime() * 1000.0f)); 28 std::cout << "startCount: " << startCount << std::endl; 29 30 31 } 32 33 34 count++; 35 36} 37 38 39 40//待機 41void FrameWork::Window::Wait() 42{ 43 std::this_thread::sleep_for(std::chrono::milliseconds(wait)); // 3 ミリ秒 44 45} 46
回答1件
あなたの回答
tips
プレビュー