C++ Visual Studio 2012-在单独的文件中使用OpenGL(GLU、GLUT)删除函数
为了方便起见,我需要使用OpenGL的标准方法在一个单独的文件中移动一些函数。例如,我有:C++ Visual Studio 2012-在单独的文件中使用OpenGL(GLU、GLUT)删除函数,c++,oop,opengl,visual-studio-2012,project,C++,Oop,Opengl,Visual Studio 2012,Project,为了方便起见,我需要使用OpenGL的标准方法在一个单独的文件中移动一些函数。例如,我有: void moveCamera( float pp1, float pp2, float pp3, float pp4, float eX, float eY, float eZ) { glMatrixMode (GL_PROJECTION); glLoadIdentity(); gluPerspective(pp1, pp2, pp3, pp4); glMatrixMod
void moveCamera( float pp1, float pp2, float pp3, float pp4, float eX, float eY, float eZ)
{
glMatrixMode (GL_PROJECTION);
glLoadIdentity();
gluPerspective(pp1, pp2, pp3, pp4);
glMatrixMode (GL_MODELVIEW);
glLoadIdentity();
gluLookAt (eX, eY, eZ, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0);
}
我了解到项目的所有.cpp文件(至少包括在解决方案VS中)都是相互关联的(如果我误解了,请纠正我),即主文件(包含main()/_tmain())应该看到其余文件并自动包含在程序代码中。对吧?
然而,如果我试图制定计划,只是在解决方案中创建一个文件,其中包含所有这些功能,那么它会说OpenGL的功能尚未定义
UPD。在尝试应用我在这里得到的建议后,我得到了以下图片:
看来我做错了什么。但是具体是什么呢?您应该在另一个文件中包含opengl头文件。每个.cpp文件都应该有它的头文件(.h),您可以在其中定义它的函数。在.cpp中,您声明它们(您写下它们的确切用途) 我(作为一个初学者)阅读了该项目的所有.cpp文件(至少 包含在解决方案VS中),相互关联(如果需要,请更正我 我误解了),即主文件(包含main()的文件)/ _tmain())应该看到其余部分并自动包含在程序代码中 为了使.cpp文件彼此可见,您应该在顶部包含所需.cpp的.h头文件。否则,默认情况下他们不会看到对方! 您还应该在每个.cpp中包含所需的所有其他库 这里应该包括OPENGL库
如果我不清楚,请再问我一次谢谢你的建议,很抱歉这么晚才发表评论。我曾尝试使用你的解决方案,但仍然有困难。请看我今天的问题附带的插图。inside funx.cpp add#include我认为应该可以