0
基本上,我想回到Python中,所以我決定在pygame中做一個小遊戲,在那裏有一個彈跳球,你需要保持在空中彈跳。問題是,當我使用函數clock.tick()
和clock.get_time()
時,get_time
應該返回以毫秒爲單位的時間,但它以毫秒* 10爲單位傳遞時間。Pygame時鐘函數返回一個奇怪的值
我的代碼:
GRAVITY = 10
def move(self, delta):
self.x+= (self.vx * delta)
self.y+= (self.vy * delta)
def speed(self, delta):
self.vy += (GRAVITY * delta)
clock.tick()
while True:
clock.tick()
delta = (clock.get_time()/100) #should be /1000
ball.move(delta)
ball.speed(delta)
工作平穩就像在現實世界中,當其/ 100,但作品真的那麼它/ 1000慢。
嘗試使用'clock.get_ticks',這應該使用毫。 pygame文檔中還有這個需要注意的地方:「pygame中的時間以毫秒(1/1000秒)表示。大多數平臺的時間分辨率有限,大約爲10毫秒。該分辨率以毫秒爲單位,在TIMER_RESOLUTION常量中給出 – TyrantWave 2012-01-16 14:04:24