首页 > 解决方案 > 如何摆脱 pygame 上的图形伪影?

问题描述

嗨,我对编程很陌生。我正在学习编码,我目前的任务是使用 pygame 创建一个小游戏。问题是,每当我运行我的程序时,我的游戏背景都会在背景中运行这些水平伪影(下面的图片链接)。实际游戏有效,但背景看起来很糟糕。

我向教授这门课程的人问了这个问题,他们提到我应该在我的电脑上尝试不同版本的 pygame,看看是否有帮助。但这也是一个问题,因为 python 终端说安装了 pygame 1.9.6,但调试菜单中的 WingPersonal 说它正在使用 pygame 2.0.0dev10。我该如何解决这个问题?欢迎任何帮助。

我应该补充一点,我使用的是 python 3.8.3,我的操作系统是 macOS Catalina v10.15.5

图形工件

代码本身:

from uagame import Window 
from time import sleep

# create window 
window = Window('Hacking', 600, 500)
window.set_font_name('couriernew')
window.set_font_size(18)
window.set_font_color('green')
window.set_bg_color('black')
    
# display header
line_y = 0
string_height = window.get_font_height()

window.draw_string('DEBUG MODE', 0, line_y)
window.update()
sleep(0.3)
line_y = line_y + string_height

window.draw_string('1 ATTEMPT(S) LEFT', 0, line_y)
window.update()
sleep(0.3)
line_y = line_y + string_height

#   display blank line
window.draw_string('', 0, line_y)
window.update()
sleep(0.3)
line_y = line_y + string_height


# prompt for guess
guess = window.input_string('ENTER PASSWORD >', 0, line_y)

#   clear window   
window.clear()

#   display failure outcome

x_space = window.get_width() - window.get_string_width(guess)
line_x = x_space // 2

outcome_height = 7 * string_height
y_space = window.get_height() - outcome_height
line_y = y_space // 2

window.draw_string(guess, line_x, line_y)
window.update()
sleep(0.3)
line_y = line_y + string_height

#   close window
window.close()

标签: pythonpygame

解决方案


推荐阅读