本文根据教程:ogldev进行扩充学习,一步步从零开始,记录学习历程
一、简述
这一节比上一节《打开一个窗口》,多了需要使用glew库和3d数学库
glew是OpenGL的扩展库,用于帮助C/C++开发者初始化扩展(OpenGL扩展功能)并书写可移植的应用程序。这个可以通过上网搜教程自行安装引用。
3d函数库可以用网上的,也可以用源教程里的。这里我是根据需要开始自己写了一个3d数学的头文件,很好理解,也更利于学习计算机图形学,根据每章教程需要用的不同数学表达,逐渐增加我的3d数学文件。
二、代码解释
opengl_math.h:
#ifndef __OPENGL_MATH_H
#define __OPENGL_MATH_H
//向量
typedef float Vector3f[3];
//向量赋值
inline void LoadVector3(Vector3f v, const float x, const float y, const float z)
{
v[0] = x; v[1] = y; v[2] = z;
}
#endif
main.cpp:
#include <stdio.h>
#include <gl/glew.h> // GLEW扩展库,这个引用要放在freeglut.h前
#include <gl/freeglut.h> // freeGLUT图形库
#include "opengl_math.h"
GLuint VBO;
static void RenderScenceCB() {
glClear(GL_COLOR_BUFFER_BIT);