我正在尝试学习pyglet,据我了解,它只是openGL的包装,带有一些额外的东西。我对如何制作多维数据集感到非常困惑,我研究了有关如何在纯openGL中执行此操作的教程,但未能将其转换为pyglet。任何帮助将不胜感激,尤其是如果有人可以向我解释为什么将z轴上的值更改为超出范围(1、0,-1)使其停止渲染的原因。
答案 0 :(得分:1)
看看这个Code 您可以找到以下代码
def add_block(self,x,y,z):
X, Y, Z = x+1, y+1, z+1
tex_coords = ('t2f', (0, 0, 1, 0, 1, 1, 0, 1))
self.batch.add(4, GL_QUADS, self.side, ('v3f', (X, y, z, x, y, z, x, Y, z, X, Y, z)), tex_coords) # back
self.batch.add(4, GL_QUADS, self.side, ('v3f', (x, y, Z, X, y, Z, X, Y, Z, x, Y, Z)), tex_coords) # front
self.batch.add(4, GL_QUADS, self.side, ('v3f', (x, y, z, x, y, Z, x, Y, Z, x, Y, z)), tex_coords) # left
self.batch.add(4, GL_QUADS, self.side, ('v3f', (X, y, Z, X, y, z, X, Y, z, X, Y, Z)), tex_coords) # right
self.batch.add(4, GL_QUADS, self.bottom, ('v3f', (x, y, z, X, y, z, X, y, Z, x, y, Z)), tex_coords) # bottom
self.batch.add(4, GL_QUADS, self.top, ('v3f', (x, Y, Z, X, Y, Z, X, Y, z, x, Y, z)), tex_coords) # top
此外,您还可以在此项目中找到几个有趣的热门项目。当我开始学习3D渲染的pyglet时,它对我有帮助。