问题标签 [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.
python - 为背景设置恒定的半透明度
我正在尝试为我的游戏添加背景图像,并且我需要它具有一定的不透明度。我使用了set_alpha()
表面的方法来控制它的半透明度。但是,这会产生淡入效果,初始背景在设置的不透明度下最终会变为全亮度。有什么办法可以将背景的半透明度设置为恒定值?
我的代码是
关于如何做到这一点的任何提示?
python - TypeError:必须是 pygame.Surface,而不是 None
我正在使用相机,使用 pygame,我编写了以下代码:
但它返回给我这个错误:
python - pygame,调整大小时如何更新窗口大小
我有一个带有 pygame 可调整大小窗口的程序。
由于它是可调整大小的,我希望屏幕上的某些元素根据窗口大小改变位置和大小。
我将所有变量都保存在函数 setGet 中。我希望通过屏幕尺寸,并让所有变量都依赖于传入的屏幕尺寸。
我有一个运行命令的循环函数
当您更改窗口大小时,get_size() 显然不会更新。
调整窗口大小时如何更新屏幕大小?
python - 精灵在圆圈上的旋转
有一个精灵在以屏幕中心为中心的圆上移动,半径 = 30 像素。运动或多或少还可以,但精灵根本不旋转。我尝试了一些教程(例如,如何使用 rotozoom 在 pygame 中设置缩放和旋转动画),当精灵沿着一条线移动或随机改变其轨迹时 - 没有问题。那么当它沿着圆圈移动时有什么问题呢?这是代码:
我省略了我认为不必要的代码块。我确定我犯了一些愚蠢的错误。
python - Pygame表面太重
我正在创建一个具有大量高清图像的游戏,速度为 30 FPS,因此对于这种特殊情况,性能是一个大问题。我正在检查内存消耗,发现一组图像,在硬盘驱动器中有 2~3mb,当加载到游戏时,它占用了 30mb。有没有办法在不影响 CPU 使用率的情况下减少内存消耗?
python - 在pygame中创建一个透明的表面来绘制像素
我创建了一个使用像素阵列放置像素的表面,但我想让表面透明但让像素不透明,我尝试让表面透明然后将像素绘制到表面但那只是使像素也透明,任何帮助或我错过了什么?
-编辑-希望这会有所帮助,这是创建银河系表面的类对象
另外我已经说明了我尝试过的内容,没有太多要说的了
pygame - 在pygame中获取表面像素的HSV值
我在 pygame 中设置我的网络摄像头以使用 HSV 颜色空间。但是 pygame.Surface.get_at 只返回 RGB 颜色值。有没有一种方法可以读取pygame中像素的HSV值?
如果没有,在pygame中将所有像素颜色转换为HSV的推荐方法是什么?
python - 索引表面是否支持具有 alpha 值(255 除外)的调色板?
当我调用时myIndexedSurface.get_palette()
,它会返回一个 32 位 RGBA 值的列表。我想因为其中包含一个 alpha 值,所以我也可以设置和使用具有透明效果的调色板索引。然后,这些表面可以比具有全深度(32 位)每像素数据的表面更有效地作为覆盖或掩码进行 blitted。
不过,到目前为止,调色板元素的 alpha 值似乎已锁定,255
并且不会因我尝试过的任何方法而改变:
.set_palette_at(idx, (r,g,b,A))
正确设置r
、g
和b
,但将 alpha 值保留为 255,而不管A
' 值如何。.set_palette(somePalette)
ValueError: takes an alpha value of 255
如果任何somePalette
RGBA 元组元素的 alpha 值不是 255,则引发。
我正在尝试做的事情可能吗?每个调色板列表元素中的 alpha 值是否纯粹是装饰性的,它可能更容易被其他需要 32 位 (RGBA) 像素数据而不是 24 (RGB) 像素数据的进程使用?
我觉得 Pygame 中的索引表面可能一开始就无法处理这种程度的复杂性,但我也想不出或找到不应该这样做的原因。special_flags
也许 Pygame为此目的有其神秘之处?
我尝试通过初始化 Surface 本身myIndexedSurface = pygame.Surface(surfSize).convert(8)
,myIndexedSurface = pygame.Surface(surfSize, flags=pygame.SRCALPHA).convert(8)
但没有任何效果。
我还没有查看PIL或Pygame 的PixelArray
解决方案。
python - Pygame 的弧用作精灵
我正在尝试使用 pygame.draw.arc() 作为精灵,但它没有显示在屏幕上。我可以通过在主循环中编写相同的代码来实现相同的效果,但是一旦我尝试创建一个精灵,效果就不会显示出来。
(主循环中的一部分可以取消注释以查看所需的效果。)
任何指针都会有很大帮助。
python - 如何在pygame中绘制透明图像?
考虑一个棋盘,我有一个透明的女王(queen.png)图像,大小为 70x70,我想将它显示在一个黑色矩形上。代码:
错误:我没有得到透明图像,即黑色矩形根本不可见,只有白色背景的女王。请建议