OpenGL游戏引擎开发[1]-环境搭建

1,867 阅读3分钟

前言

我的计划是带大家从零开始写一个简单的渲染引擎出来。当然,我不可能每行代码都放在文章中,每节内容我们围绕一个主题,我先讲解原理,再讲解OpenGL实现的关键代码,然而我会把代码给大家,大家自行查阅。一些基本的OpenGL知识,大家可以看 LearnOpenGL 的教程,这个教程是以知识点的形式给大家讲的,我们在这里是将这些知识点串起来实现一些效果,让大家明白这些知识点在实战中是如何运用的。

我们主要实现一些有意思的东西,比如:游戏中的地形、天空盒、粒子系统、骨骼动画,shader呢,以后可能单独开个专题,专门介绍shader实现的一些效果。

好的,啰里啰唆说了这么多。OpenGL我也是在学习的过程中,讲解的过程中难免出现错误或者理解不到位的地方,还请大家指正。

下面进入正题:

开发环境搭建

开发环境:

  • VS2015
  • GLFW
  • GLEW
  • glm

GLFW、GLEW、glm 是什么东西,怎么编译,我就不说了啊。 LearnOpenGL 这个教程中讲得很清楚了。如果你的开发环境不是VS2015,你就需要自己编译,如果是的话,你直接用我后面给的源码即可,我都编译好了。

编译过程中大家遇到问题的,可以给我留言,我尽量帮大家解决。

  1. 新建工程 Win32 控制台程序。
  1. 然后关闭VS,我们调整下目录结构

大家按照自己的习惯来啊,我是习惯这么干。总之保证你的目录结构整洁就行,这个习惯很重要。

  1. 然后在VS中配置刚才设置的目录

配置输出、临时目录

配置头文件目录

配置库文件目录

配置库文件名称

好了,这样环境就搭建好了。下面我们来显示主窗口。

显示窗口

我们的主窗口是对GLFW窗口的封装,现在很简单,以后会根据需求扩充这个窗口类。

App类是程序的入口。从系统设计来讲,引擎部分只实现图形绘制相关的功能,上层应用就是在App中实现的。举个例子:使用Unity开发游戏,你不用关系怎么加载一个游戏角色,unity引擎会提供你这个功能,但是你需要自己写一些逻辑代码控制你这个角色,比如受伤之后会流血等等。我们做游戏时,大部分时间就是在处理游戏的逻辑。

这里App就是用来编写一些逻辑来测试我们写的渲染引擎。

然后就是经典的main函数,代码很简单,就是启动App类中的Run函数。

运行,效果很一般,就一个黑窗口。

ok,结束。很简单。

下一节继续来完善这个框架。

源码:

下载:https://ww.lanzous.com/ic4j70h 密码:67vv

欢迎大家关注我的公众号【OpenGL编程】。

每天进步一点点,探索3D编程背后的技术细节,不再做只会“调包”的傻小白。以幽默风趣的行文风格,近乎白话文的专业知识讲解,分享3D编程的心得、教程、算法,带你走进3D编程的世界。