openglglscale和glLoadMatrix

openglglscale和glLoadMatrix,opengl,matrix,transformation,Opengl,Matrix,Transformation,我正在用Kinect编写一个3D扫描仪,我想显示点云 点云具有来自跟踪系统的附加转换矩阵 我使用: 比例=0.0005; GLSCALE(比例,比例,比例) 为了解决这个问题,Opengl会因为剪切平面而剪切0-10.000之间的x、y、z值 当我使用glLoadMatrix(trackingtransform)时;我什么也没看到。。即使我在加载矩阵之后再次使用glscale。glLoadMatrix将用glscale替换生成的矩阵 如果要组合它们,请使用glMultMatrix而不是glLoa

我正在用Kinect编写一个3D扫描仪,我想显示点云

点云具有来自跟踪系统的附加转换矩阵

我使用: 比例=0.0005; GLSCALE(比例,比例,比例)

为了解决这个问题,Opengl会因为剪切平面而剪切0-10.000之间的x、y、z值


当我使用glLoadMatrix(trackingtransform)时;我什么也没看到。。即使我在加载矩阵之后再次使用glscale。

glLoadMatrix将用glscale替换生成的矩阵

如果要组合它们,请使用glMultMatrix而不是glLoadMatrix


也就是说,我建议按照datenwolf所暗示的去做。使用投影矩阵设置一个坐标系,该坐标系映射您的使用场景(即0-10000范围内的世界),并保持modelview矩阵四处移动

您可以直接缩放点所在的矩阵,如:

glPushMatrix();
glScale();
-draw all your points...
glPopMatrix();

你充其量也很含糊。OpenGL没有硬限制,它可以在哪里剪辑。我只是怀疑您没有正确设置投影和模型视图。请出示一些代码。最值得注意的是,在这里您可以设置modelview和projection Matrix.facepalm。我是opengl新手。设置projectionmatrix会节省我几个小时。。谢谢