以sb7code为基础创建一个基本的OpenGL项目

以sb7code为基础创建一个基本的OpenGL项目

  1. 从github上面下载sb7code代码:
    https://github.com/openglsuperbible/sb7code

  2. 打开HOWTOBUILD.TXT(在 GITHUB网页上直接打开格式比较友好).
    以sb7code为基础创建一个基本的OpenGL项目

根据这个文档中说的,在本地编译第一步中下载的sb7code代码,编译是为了得到我们需要的.lib文件。

  1. 在VS2013中建一个c++的空项目。
    以sb7code为基础创建一个基本的OpenGL项目

  2. 将红框中所示的这些文件和文件夹拷贝到当前项目目录下,或者一个公共目录下:
    (其中.h文件都是在sb7code目录下能找到的,.lib文件是我们第二步编译出来的。)

以sb7code为基础创建一个基本的OpenGL项目

  1. 将包含文件所在的路径添加到项目的额外包含路径中。
    以sb7code为基础创建一个基本的OpenGL项目

  2. 将lib所在的路径加入到"额外库目录"中。
    (里面应该是lib,而不是../lib, 因为这个图是我从别的项目中截的,不要被误导)

以sb7code为基础创建一个基本的OpenGL项目

  1. 在链接器选项的输入中添加需要的.lib文件,注意要包含opengl32.lib,编译器会从system目录去找这个lib文件。
    (截图里面不应该带lib/前缀了,因为上一步已经把lib目录加入到额外库目录中了。这个图是从别的项目中截的,不要被误导。)

(截图不太清楚,这里只需要额外添加opengl32.lib;glfw3_d.lib;sb7_d.lib;这三个lib就可以了。)

以sb7code为基础创建一个基本的OpenGL项目

  1. 在项目中添加一个.cpp文件。添加如下的代码:
#include"sb7.h"

// Derive my_application from sb7::application

classmy_application:publicsb7::application

{

public:

voidinit()

{

staticconstchartitle[] ="OpenGL SuperBible - Simple Clear";

sb7::application::init();

info.flags.fullscreen =false;

memcpy(info.title, title,sizeof(title));

}

// Our rendering function

voidrender(doublecurrentTime)

{

// Simply clear the window with red

staticconstGLfloatred[] = { 1.0f, 0.0f, 0.0f, 1.0f };

glClearBufferfv(GL_COLOR, 0, red);

}

};

// Our one and only instance of DECLARE_MAIN

DECLARE_MAIN(my_application);

  1. 如果当前机器上的OpenGL版本低,可能需要修改sb7.h中的代码,将majorVerion改成3, 而不是原来的4.
    详情见: http://www.cnblogs.com/time-is-life/p/6394239.html

以sb7code为基础创建一个基本的OpenGL项目

  1. 编译可能不通过,那是因为有的预编译宏没有定义,确保如下的预编译宏定义了。(这一步的原因是sb7code和GLFW是跨平台的,需要定义预编译宏来指示项目在Windows下编译)
    以sb7code为基础创建一个基本的OpenGL项目

  2. 一切就绪,F5运行一下,出来了!
    以sb7code为基础创建一个基本的OpenGL项目

完整代码见 BasicOpenGLProject, 可以用它作为一个基本项目来创建其他的OpenGL项目。

原文链接: https://www.cnblogs.com/time-is-life/p/6396549.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/249370

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 上午3:36
下一篇 2023年2月14日 上午3:36

相关推荐