Pyglet,图像的边缘像素被包裹

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

我目前正致力于使用Python开发游戏,并一直试图解决这个问题。

由于某种原因,我的图像拼贴的边缘被缠绕到图像的另一侧。看起来不是很大的子像素量。

这是一个屏幕截图的特写,所以你可以看到我的意思,显然有这么简单的瓷砖,它在某些地方比其他地方更明显(参见橙色的一面,从另一边的道路可以看到)

python image pyglet
1个回答
1
投票

此问题是由于图像边缘处的微小浮点精度问题。 OpenGL必须在没有给出更多值的边缘处对某些值进行插值。正常操作是GL_REPEAT,这意味着纹理的环绕效果。你想要的是GL_CLAMP,但这必须在纹理创建时说明,afaik。

glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, CL_CLAMP )
glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP )

不幸的是,我不知道如何将其与pyglet集成。也许有创作选择?

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