在pygames上直线移动矩形很容易。但是我如何将重力应用到矩形的路径中?喜欢而不是直线路径,在弯曲的路径中移动。也许,下面的图片将帮助您了解我想要实现的目标。
以下是将矩形沿直线路径移动到左侧的代码。
import pygame
import time
pygame.init()
white = (255,255,255)
black = (0,0,0)
display_width = 800
display_height = 700
gameDisplay = pygame.display.set_mode((display_width,display_height))
clock = pygame.time.Clock()
FPS = 30
x = 300
y = 100
while True:
x -= 10
gameDisplay.fill(white)
pygame.draw.rect(gameDisplay, black, (x, y, 50,50))
pygame.display.update()
clock.tick(FPS)
答案 0 :(得分:1)
y_speed = 0
x_speed = -10
gravity = -3 # Depending on how fast you want gravity to be
while True:
x += x_speed
y += y_speed
y_speed += gravity
gameDisplay.fill(white)
pygame.draw.rect(gameDisplay, black, (x, y, 50,50))
pygame.display.update()
clock.tick(FPS)
学习一些物理学可以帮助编程。如果你仍然感到困惑,我建议你研究一些基本的运动学方程