Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/140.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从c++;头文件 我使用的是GLUT、OpenGL和C++的XCODE,我尝试导入和绘制模型。我使用了obj到.h文件的转换,这是头的一小部分,因此您可以看到结构 unsigned int M4GunNumVerts = 37812; GLfloat M4GunVerts [] = { // f 1/1/1 1582/2/1 4733/3/1 {0.266494348503772, 0.0252334302709736, -0.000725898139236535}, {0.265592372987502, 0.0157389511523397, -0.000725898139236535}, {0.264890836474847, 0.0182004476109518, -0.00775888079925833},_C++_Xcode_Opengl_3d_Glut - Fatal编程技术网

从c++;头文件 我使用的是GLUT、OpenGL和C++的XCODE,我尝试导入和绘制模型。我使用了obj到.h文件的转换,这是头的一小部分,因此您可以看到结构 unsigned int M4GunNumVerts = 37812; GLfloat M4GunVerts [] = { // f 1/1/1 1582/2/1 4733/3/1 {0.266494348503772, 0.0252334302709736, -0.000725898139236535}, {0.265592372987502, 0.0157389511523397, -0.000725898139236535}, {0.264890836474847, 0.0182004476109518, -0.00775888079925833},

从c++;头文件 我使用的是GLUT、OpenGL和C++的XCODE,我尝试导入和绘制模型。我使用了obj到.h文件的转换,这是头的一小部分,因此您可以看到结构 unsigned int M4GunNumVerts = 37812; GLfloat M4GunVerts [] = { // f 1/1/1 1582/2/1 4733/3/1 {0.266494348503772, 0.0252334302709736, -0.000725898139236535}, {0.265592372987502, 0.0157389511523397, -0.000725898139236535}, {0.264890836474847, 0.0182004476109518, -0.00775888079925833},,c++,xcode,opengl,3d,glut,C++,Xcode,Opengl,3d,Glut,我试着用这段代码在我的主体中画出这个 glVertexPointer(3, GL_FLOAT, 0, M4GunVerts); glNormalPointer(GL_FLOAT, 0, M4GunNormals); glTexCoordPointer(2, GL_FLOAT, 0, M4GunTexCoords); glDrawArrays(GL_TRIANGLES, 0, M4GunNumVerts); 我跑的时候看不见模型。我已经设置了一个glut窗口,并制作了一个三角形,以查看是否正在绘

我试着用这段代码在我的主体中画出这个

glVertexPointer(3, GL_FLOAT, 0, M4GunVerts);
glNormalPointer(GL_FLOAT, 0, M4GunNormals);
glTexCoordPointer(2, GL_FLOAT, 0, M4GunTexCoords);
glDrawArrays(GL_TRIANGLES, 0, M4GunNumVerts);
我跑的时候看不见模型。我已经设置了一个glut窗口,并制作了一个三角形,以查看是否正在绘制形状,并显示三角形。我不知道如何解决这个问题,以便我可以看到模型

这是重塑函数

  glMatrixMode(GL_PROJECTION);

glLoadIdentity();

glViewport(0, 0, w, h);

gluPerspective(45, ratio, 0.01, 1000);

glMatrixMode(GL_MODELVIEW);
有人能帮忙吗?

您可以:

  • 无法正确启用阵列
  • 或者您的相机视图与对象的方向错误
  • 或者你的相机在物体内部。(启用
    CULL_FACE
    时)
  • 和或错误或根本没有
    glColor
    !!!(在黑色上看不到黑色)
  • 和/或忘记绑定纹理(启用时)
  • 和或错误
    glTexCoord
    (启用时)
  • 和/或错误设置灯光(启用时)
  • 与对象距离和大小相关的和或错误的透视图(视图
    角度、znear、zfar
  • 如果对象是平面的,并且您正朝薄的一侧看
一些提示:

尝试围绕场景旋转摄影机(理想情况下使用箭头等键,查看对象是否在后面…或鼠标拖动…)。同时尝试向前/向后移动相机(也可以使用按键,但我最喜欢的是鼠标滚轮)

首先使用
glBegin()glVertex()glEnd()
避免错误启用的数组出现问题,并在没有照明、纹理、
CULL_FACE
ing的情况下启动(禁用它们!!!)。当您看到您的模型时,然后以增量方式启用所有,这样您就可以看到问题所在。一切正常后,请尝试阵列

如果在启用
CULL_FACE
时对象看起来方向错误,则旋转对象时可以看到缠绕规则错误(
CW/CCW


这是您可以使用它作为窗口和相机/模型矩阵设置的测试

您没有提供足够的信息来回答此问题。坐标空间在OpenGL中非常重要,在不知道投影矩阵和modelview矩阵的情况下,许多事情都可能出错。此外,在您提供的最小代码段中还未启用任何顶点数组指针。请提供更多包含这两个方面的代码。我已经启用了顶点数组点,但没有包括它。我还添加了一些代码。@DavidGraovac:请不要使用类似“obj到h”的转换器。而是使用类似于ASSIMP的库从文件加载模型数据。