pygame.time.set_timer(event,milliseconds)
2 つの USEREVENT をキューに追加するために使用しています。毎秒 USEREVENT+1 (1000ms)、5ms ごとに USEREVENT。これは、取得する USEREVENT+1 ごとに 200 の USEREVENT を取得することを意味する必要があります。私は100のイベントしか取得しません。
タイマーが持つことができる最小の遅延は10msのようです。これを使用して FPS を制御しようとしていますが、USEREVENT+1 信号でゲーム ロジックを 1 刻みで「更新」しますが、タイマーの上限が 10 ミリ秒未満の場合は、それよりも高くなることはできません。 100fps。誰かが理由を知っていますか?
また、ボーナス ポイントの場合、ミリ秒は整数でなければなりません。つまり、1000 の倍数 (10、20、25、50、100 など) の fps しか持てません。この方法で、たとえば 60fps を達成するにはどうすればよいと思いますか? 本来は次のフレームまで寝ていたのですが、CPUに優しくしたいのでティック間でアイドリングしたいです。pygame.event.wait は、イベントがキューに入るまでアイドル状態になるため、pygame.time.set_timer を使用しているのはこのためです。