[英]How to move the camera in pygame
我正在尝试构建一个菜单屏幕,其中相机对鼠标做出轻微反应,向相机方向移动一点。 这是我到目前为止所拥有的,但我找不到任何关于如何移动相机的信息。
import pygame
import button
import game
#create display window
SCREEN_HEIGHT = 720
SCREEN_WIDTH = 1280
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
pygame.display.set_caption('Menu')
#load button images
start_img = pygame.image.load('start_btn.bmp').convert_alpha()
exit_img = pygame.image.load('exit_btn.bmp').convert_alpha()
#create button instances
start_button = button.Button(600, 360, start_img, 0.5)
exit_button = button.Button(600, 500, exit_img, 0.6)
game = game()
#game loop
run = True
while run:
screen.fill((255, 242, 203))
if start_button.draw(screen):
print('START')
if exit_button.draw(screen):
print('EXIT')
#event handler
for event in pygame.event.get():
#quit game
if event.type == pygame.QUIT:
run = False
if event.type == pygame.MOUSEMOTION:
if game.state == "menu":
position = pygame.mouse.get_pos()
#move camera slightly in the direction of the mouse
pygame.display.update()
pygame.quit()
好的,所以相机在 pygame 中并不存在。 它们只是通过偏移量(通常由玩家设置)对游戏元素进行 blitting 所产生的幻觉。 因此,您应该在绘制按钮和您想要移动的任何其他内容之前处理您的事件,然后将您正在绘制的任何内容的坐标设置到它们通常去的位置,但是 + 或 - 偏移量。 至于它是鼠标控制的,我建议将它设置为鼠标位置除以或减去一些量,这样它就不会只是快速而盲目地跟随鼠标位置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.