问题标签 [pygame-surface]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
509 浏览

python-2.7 - Pygame:使用 pygame.Surface 和 convert_alpha() 会降低性能

我正在开发一个简单的瓷砖游戏,它显示一个网格图像并用连续的图像层对其进行绘制。所以我有-

然后后来我把这些-

请注意,为简洁起见,我没有包含很多代码,但它基本上可以工作 - 除了性能非常缓慢。如果我注释掉 DISPLAYSURF 的东西性能飞跃,所以我认为我需要一个更好的方法来做 DISPLAYSURF 的东西,或者可能是 pygame.image.load 位(是 convert_alpha() 最好的方法,记住我需要分层-图像方法?)

我读了一些叫做 Psycho 的东西可能会有所帮助,但不确定如何适应它。任何关于如何提高性能的想法都非常受欢迎。

0 投票
2 回答
104 浏览

python - pygame的崩溃事件

我正在做一个简单的 pygame 项目,它目前有从屏幕顶部落到屏幕底部的坠落炸弹。如果玩家击中炸弹,他们就会死亡。到目前为止,一切都很好。问题是当炸弹经过玩家但还没有离开屏幕时,它仍然会杀死玩家。意思是,炸弹会穿过玩家的下部,但如果你穿过,在它穿过屏幕下部之前,你会死。他是我的代码:

值如下:

player.rect.x 的值范围从 120 到 500,具体取决于玩家在屏幕上的位置。(屏幕也会随着您的移动从左向右滚动。) 28 来自字符图像的宽度。

坠落物体的代码如下:

我已经为此工作了大约一个星期,但没有取得任何进展。感谢您的任何帮助。

0 投票
1 回答
88 浏览

python - Pygame创建一个新的屏幕

基本上,当用户单击新游戏时,我已经被困了几个小时试图创建一个空白模板。我告诉代码然后取消 while 循环并使用 Background.fill() 函数创建一个空白屏幕,但它不起作用。这是我的代码。

0 投票
2 回答
156 浏览

python - 如何在pygame中使用鼠标按钮?

嗨,我是 pygame 的新手,我正在创建我创建的棋盘游戏的虚拟版本。

所以现在我在pygame中玩arond,我想将我使用w和d移动片段的代码更改为我将使用鼠标点击移动我的片段的代码

这是代码:

0 投票
4 回答
1835 浏览

python - Pygame,从 2d numpy 数组创建灰度

Python 3.4,pygame==1.9.2b8

我想绘制灰度框架。现在,下面的代码产生蓝色,但我想在(0,255)范围内制作颜色,其中 0 - 黑色。255-白色。这怎么可能?!

  • 实际上我有更复杂screenarray的,每个元素都位于(0,65535)期间。所以我想将它转换为灰度。

非常感谢。

0 投票
1 回答
47 浏览

python - Pygame.Surface 让我发疯

如果我只做 image.load('').convert_alpha(),我可以得到我所有的图像。当我尝试获得更多控制权时,Surface 简直要了我的命,我不知道该怎么办了。我需要帮助,拜托!!

听到我最新的错误

0 投票
1 回答
233 浏览

python - Python 3.5.2:如果鼠标在其上,则 Pygame 高亮矩形

使用 pygame 模块,我在屏幕上绘制了一个黑色矩形。当我将鼠标悬停在矩形上时,我编写了一个代码,通过在矩形周围绘制另一个(绿色)矩形(宽度 = 4)来“突出显示”矩形。它可以工作,但前提是鼠标在它上面移动。如果它静止在黑色矩形的表面上,则不会出现绿色矩形。这是我的代码:

我错过了什么?

0 投票
4 回答
14646 浏览

python - 如何从 float32 的 numpy 数组创建 pygame 表面?

我有一段代码可以使用

这将返回一个 pygame 表面。我想在其他地方使用相同的代码,而是传入一个 numpy 数组。(实际上,我将有一个 if 语句来确定我们是否有一个数组或一个图像的路径。在任何一种情况下,函数都必须返回相同类型的对象,一个 pygame 表面。它已经使用上面的方法工作了代码。如果脚本的使用方式不同,现在我必须添加第二种生成相同对象的方法。)我尝试过使用

但问题是这个函数需要一个 INTEGER 数组。我的数组是一个 float32。我可以通过像这样传递数组来强制它通过

但是当我稍后显示它时,它看起来像垃圾(想象一下我的惊讶)。所以我的问题是,我们如何从一个 numpy 浮点数组中优雅地创建一个 pygame 表面?

0 投票
1 回答
555 浏览

python - Python/Pygame,标签未显示

所以基本上我只是想在 python 中使用 pygame 做一些事情。这是代码的一部分,其余代码不影响这一点,所以我

如您所见,它的目的是创建一个全屏窗口,其中只有一些字母变为“3”、“2”、“1”,然后中断并执行我的其余代码。

一切看起来都很好,但问题是什么都没有出现。我只是像我想要的那样得到一个黑色的全屏窗口,但没有显示白色文本。我究竟做错了什么?

0 投票
0 回答
218 浏览

python-2.7 - 在 python 中使用多处理访问两个网络摄像头以同时在 pygame 表面上显示

我正在做我的学术项目。我必须同时在屏幕上显示来自两个网络摄像头的输出而不会出现延迟。为此,我在 python 中使用 pygame 表面(因为它是 SDL)和多处理。使用多处理,我们只能在两个进程之间传递一个对象。这是我预期要运行的代码:

我知道这段代码不起作用,但类似于将 pygame-surface 对象管道传输到 cam1_core 和 cam2_core 进程(但管道只有一个起点和一个终点,在进程之间管道/排队对象也不是一个好主意)或要显示的管道/队列摄像机图像。我正在使用多处理同时获取图像。非常感谢此类问题的任何相关信息。