防止 pyglet 形状混合

问题描述 投票:0回答:1

我有以下代码。

import pyglet

window = pyglet.window.Window(fullscreen=True)
batch = pyglet.graphics.Batch()

rectangle1 = pyglet.shapes.Rectangle(100, 100, 80, 80, color=(128, 0, 0, 128), batch=batch)
rectangle2 = pyglet.shapes.Rectangle(150, 150, 80, 80, color=(128, 0, 0, 128), batch=batch)

@window.event
def on_draw():
    window.clear()
    
    batch.draw()

pyglet.app.run()

这是结果。 矩形 我想防止两个矩形的颜色相加。相反,整个区域应该只有一种颜色。

我用谷歌搜索,找到了 pyglet.graphics 模块和命令

glEnable(GL_BLEND)
glDisable(GL_BLEND)
glBlendFunc(GL_ONE, GL_ZERO)
。所有这些都没有达到预期的效果或根本没有任何效果。我怀疑它们不会影响形状库中的类。 我也问过chatGPT,没有好的结果。

python pyglet
1个回答
0
投票

将颜色更改为不透明的纯色,然后您就可以实现此目的

color=(128, 0, 0)

然后你可以得到类似的输出

output image

© www.soinside.com 2019 - 2024. All rights reserved.