gpt4 book ai didi

python-3.x - Pygame 中更复杂的颜色渐变

转载 作者:行者123 更新时间:2023-12-03 23:47:47 25 4
gpt4 key购买 nike

在带有 Pygame 模块的 Python 3.8 中:

我正在尝试为我正在制作的彩色游戏制作颜色渐变。我知道如何制作一维渐变,如下所示:

enter image description here

但我希望能够在渐变中创建具有两种以上颜色的图像。互联网上的一个例子是这样的:(忽略花哨的文字)

enter image description here

如何创建一个函数以在表面上生成多种颜色的渐变?重要的是我可以选择角落的颜色,或者至少能够以我能理解的方式影响它们。

我在网上找到的一个想法是这样的:

for i in range(900):
for j in range(900):
surface.set_at((i,j),(i/4,j/4,i/4))

我的问题是很难选择它生成的颜色。我无法拼凑如何使颜色相互融合,尤其是在使用多种颜色的情况下。

最佳答案

没有魔法。
Pygame 没有用于渐变的 API,尽管您还没有发布
你的代码,你可能做了插值就好了。

所以,对于“二维方形渐变”,你必须继续打破你的
小部分的问题,直到你得到你想要的 -
为此,它可能是:在 y == 0 处在您感兴趣的区域顶部运行一个渐变,在您的区域底部以 y = 高度运行另一个渐变,并且对于每一列,您插入一个新渐变,从
顶部渐变的颜色并运行到底部渐变的颜色。

唯一的坏消息是这在 pygame 中会非常慢 - 但您可以绘制一次并保存生成的图像,然后在游戏时加载它。

还有其他适合绘制线性渐变的库和框架,
并快速完成,就像 Cairo、gegl 和 opengl 本身一样 - 但这些都没有现成的方法将一个完整的渐变过渡到另一个。

[继续……]

关于python-3.x - Pygame 中更复杂的颜色渐变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61467934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com