OpenGL超级宝典(第7版)笔记3 清单的初始环境配置part3
文章目录
书接上文,上一次我们真正打开了一个窗口,还填充了颜色,还能读取键盘鼠标的输入来改变我们窗口中颜色,这次我们将介绍一下替代sb7.h的框架包括写我们自己的stratup() render() shutdown(),这很简单,如果你有一定的基础现在就可以写一个简易版的了,这一篇会很轻松。当然我们当前只是建立基础的sb7.h的框架,其中很多的功能这里仍不能实现(因为我们暂时还用不到那些功能)
基于GLFW的窗口体系替代sb7.h的部分内容
在书中我们是建立了一个名为my_application的类,并且重写了函数render()startup()shutdown(),应该是在程序运行中自动调用这三个函数,其中render()应该是渲染循环中调用的,startup()应该是在渲染循环之前调用的,shutdown()应该是在渲染循环后调用的。这样分析之后就有了我们的基础框架。
1 设置一下头文件
注意我这里<glfw3.h><glew.h>都没放在子文件夹中,所以不是<GLFW/glfw3.h><GL/glew.h>,这里需要大家自己调整一下
#ifndef BASIC_RA
#define BASIC_RA
#include<iostream>
#include<Windows.h>
#define GLEW_STATIC
#include<glew.h>
#include<glfw3.h>
#include<math.h>
#endif //!BASIC_RA
2 声明函数,设置全局变量,设置回调函数
然后就是startup()render()shutdown()的声明,全局变量windowhigh,windowwide这是控制窗口的高和宽,最后是mouse_callback(),key_callback()两个回调函数,分别处理鼠标和键盘的输入。
void startup();//声明
void render(float currentTime);//声明
void shutdown();//声明
int windowhigh = 720;
int windowwide = 720;
void