我尝试使用GL_TRIANGLES
模式为pyglet.graphics.draw
渲染一个多边形,但遇到了问题。
我一直在尝试像我在其他地方看到的人们那样渲染它
def draw(self):
pyglet.graphics.draw(
size=int(len(self.coords) / 2),
mode=pyglet.gl.GL_TRIANGLES,
position=('v2f', self.coords),
)
但是遇到了以下错误:
File "C:\Python311\Lib\site-packages\pyglet\graphics\__init__.py", line 52, in draw
gl_type = vertexdomain._gl_types[fmt[0]]
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
KeyError: 'v'
用法是否发生变化?不知道我到底哪里做错了。
1条答案
按热度按时间yr9zkbsy1#
v2f
是旧的格式规范。在Pyglet 2.0版本中,这一点已经改变。参见draw(size, mode, **data)
的文档。第一个参数是顶点的数量,每个顶点必须有3个组件。浮点数的格式是f
。例如:请注意,这将只绘制黑色三角形。设置
colors
属性以绘制彩色形状。最小示例: