Nic*_*las 4 c++ opengl opengl-4
最近我开始学习OpenGL和; 反过来,开始阅读使用OpenGL 4.3的OpenGL SuperBible第6版.
我的问题出现在sb6.h头文件中,因为在本书中写道,这是一个c ++头文件,它定义了一个名为sb6的命名空间,它包含了一个应用程序类的声明.
当我尝试编译我的程序时,我的C++ IDE(Visual Studio 2010)会抛出一个错误,指出无法找到这样的头文件.
所以也许你们其中一个人听说过这个问题,或者也开始阅读这本书并知道如何解决这个问题; 如果是的话请回复.
#include "sb6.h"
//derive my_application from sb6:application
class my_application : public sb6.application
{
public :
//Rendering function
void render(double currentTime){
//Simply clear the window red
static const GLfloat red[] = {1.0f , 0.0f , 0.0f , 1.0f};
glClearBufferfv(GL_COLOR, 0 , red) ;
}
Run Code Online (Sandbox Code Playgroud)
您正在寻找的sb6.h文件位于:https: //github.com/openglsuperbible/sb6code/blob/master/include/sb6.h 您还可以浏览该项目并查看其余的源/检索您需要的任何其他文件.当您将它们复制到本地驱动器/目录时,请确保将包含标头的新目录的路径添加到包含路径以及将任何lib添加到lib路径等,否则您仍将遇到相同的错误.
好吧,除非你直接将它们添加到项目目录(不推荐,因为你最终会在所有gl项目中大量重复内容,最好将它们放在一个位置并添加路径)让我知道你是否需要一个手定义路径.
额外:
要包含头文件,库等,只需执行以下操作:
下载所有sb6项目,然后保存在某处(例如c:\sb6\)然后,转到此处Property Pages -> VC++ Directories -> Include Directories
添加c:\sb6\include\路径
那么你将要通过以下Property Pages -> VC++ Directories -> Library Directories方式添加库:
到这里:
最后通过以下内容添加源代码目录
Property Pages -> VC++ Directories -> Source Directories
:

修复错误LNK2019:函数___tmainCRTStartup中引用了未解析的外部符号_main
这通常是链接器问题,并且通常是从选择的错误项目类型(即选择Windows程序项目而不是Windows控制台项目)中发生的.可以通过执行以下操作来修复:
转到Project -> Properties -> Configuration Properties -> Linker -> System该条目Subsystem并将其更改为Console
如图所示:

让我知道你如何继续,如果需要我可以扩展.