Ich wollte eine Physik-Engine für mein Spiel erstellen und entschied, dass ich zuerst Kräfte decken sollte. Ich verwende Pygame auf Python, um dies zu erreichen.Python Pygame Kräfte
Zum Beispiel möchte ich in der Lage sein, eine Kraft einer bestimmten Größe zu programmieren, die auf ein Objekt wirkt. Ich konnte mir keinen Weg vorstellen, dies zu tun. Nachdem ich die grundlegende Strategie heruntergefahren habe, sollte es einfach sein, Größen von Kräften zu subtrahieren und alle möglichen unterschiedlichen Eigenschaften hinzuzufügen. Hier ist mein Quellcode jetzt:
import pygame
pygame.init()
display_width = 800
display_height = 600
gameDisplay = pygame.display.set_mode((display_width, display_height))
pygame.display.set_caption('Physics Engine')
clock = pygame.time.Clock()
x = display_width/2
y = display_height/2
gameExit = False
def force():
# force function
# Code here
y_change = 0
x_change = 0
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT:
quit()
elif event.type == pygame.KEYDOWN: # check for key presses
if event.key == pygame.K_LEFT: # left arrow turns left
x_change = -10
y_change = 0
elif event.key == pygame.K_RIGHT: # right arrow turns right
x_change = 10
y_change = 0
y += y_change
x += x_change
print(x, y)
gameDisplay.fill((255, 255, 255))
pygame.draw.rect(gameDisplay, (255, 0, 0), [x, y, 30, 30])
pygame.display.update()
clock.tick(25)
pygame.quit()
quit()
Ab sofort ist es einfach ein rotes Quadrat nach links und rechts bewegen. Ich möchte, dass wenn ich die Pfeiltaste gedrückt halte, es sich bewegt, und wenn ich es loslasse, hört es auf. Ich habe versucht, einen Boolean in dem Ereignis zu verwenden, aber es scheint nicht zu funktionieren.
Ich möchte einen einfachen Schwerkraftfaktor implementieren.
Vielen Dank für das Lesen!