回答編集履歴
2
計算の修正
test
CHANGED
@@ -30,7 +30,7 @@
|
|
30
30
|
|
31
31
|
int t = (int)(1000 - ((glfwGetTime() * 1000.0) - startCount));
|
32
32
|
|
33
|
-
wait = t / 60;
|
33
|
+
wait += t / 60;
|
34
34
|
|
35
35
|
```
|
36
36
|
|
1
原因だけでは不足なようなので追記
test
CHANGED
@@ -17,3 +17,39 @@
|
|
17
17
|
wait = t / 60;
|
18
18
|
|
19
19
|
```
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
原因について理解できなかったようなので、追記
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
```cpp
|
28
|
+
|
29
|
+
// 1000msから経過時間を引き、スリープが必要な時間を計算する
|
30
|
+
|
31
|
+
int t = (int)(1000 - ((glfwGetTime() * 1000.0) - startCount));
|
32
|
+
|
33
|
+
wait = t / 60;
|
34
|
+
|
35
|
+
```
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
> 提示コードですが1000倍することによってミリ秒を取得してそれを使ってフレームレート制御してwait変数の数値の分プログラムを停止するコードを作りたいのですがなぜかint t の値が段々増えてしまし困っています。何が原因なのでしょうか?
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
上記、質問自体については以上となります。
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
> glfwGetTime();関数を使ってフレームレートを固定する方法が知りたい。
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
タイトルについては、毎フレーム処理が一定なんてことはないでしょうし、
|
54
|
+
|
55
|
+
この方法自体、筋が悪いと思うので組み直した方がいいでしょう。
|