python如何檢測pygame中的碰撞

dunne21發表於2021-09-11

python如何檢測pygame中的碰撞 

說明

1、在PyGame中,可以使用pygame.Rect物件來完成基本的碰撞檢測。

2、該Rect物件提供了多種方法來檢測物件之間的碰撞。

請注意,即使是在Pong遊戲中,矩形物體與圓形物體(如球拍和球)的碰撞也可以透過兩個矩形物體(球拍和球的邊界矩形)之間的碰撞來粗略地檢測到。

例項

pygame.Rect.collidepoint:

測試點是否在矩形內

import pygame
 
pygame.init()
window = pygame.display.set_mode((250, 250))
rect = pygame.Rect(*window.get_rect().center, 0, 0).inflate(100, 100)
 
run = True
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
 
    point = pygame.mouse.get_pos()
    collide = rect.collidepoint(point)
    color = (255, 0, 0) if collide else (255, 255, 255)
 
    window.fill(0)
    pygame.draw.rect(window, color, rect)
    pygame.display.flip()
 
pygame.quit()
exit()

以上就是python檢測pygame中碰撞的方法,希望對大家有所幫助。更多Python學習指路:

本文教程操作環境:windows7系統、Python 3.9.1,DELL G3電腦。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1600/viewspace-2828428/,如需轉載,請註明出處,否則將追究法律責任。

相關文章