*** empty log message ***

This commit is contained in:
Joe Shochet 2000-11-18 01:50:14 +00:00
parent f1c005149f
commit f97a47558b
2 changed files with 14 additions and 1 deletions

View File

@ -23,6 +23,9 @@ class ShowBase:
self.wantTk = self.config.GetBool('want-tk', 0)
self.wantSound = self.config.GetBool('want-sound', 1)
self.wantDIRECT = self.config.GetBool('want-directtools', 0)
# Set a maximum frame rate on the render loop (0 means do not limit)
Task.maxFps = self.config.GetInt('max-fps', 120)
import Loader

View File

@ -2,12 +2,16 @@
from libpandaexpressModules import *
from DirectNotify import *
from PythonUtil import *
import time
exit = -1
done = 0
cont = 1
# Note: this is dconfig'ed in ShowBase.py, but Tasks want to be independent
# of ShowBase and panda, so we have to set an initial value here
maxFps = 120
# Store the global clock
globalClock = ClockObject.getGlobalClock()
@ -258,7 +262,13 @@ class TaskManager:
self.running = 1
while self.running:
try:
startTime = time.time()
self.step()
finishTime = time.time()
# Max out the frame rate so we do not starve the cpu
if (maxFps > 0):
dt = finishTime - startTime
time.sleep(max(0, (1.0/maxFps)-dt))
except KeyboardInterrupt:
self.stop()
except: