OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

时间:2024-04-04 13:48:56

OpenGL ES 3.0一书中第十一章讲了如何搭建OpenGL ES 平台,但是书中讲解过于简单,下面是我在搭建过程中的详细步骤。我用的是64位win7+VS2013.

 

第一步:  cmake 的下载与安装

下载网址:https://cmake.org/download/

下载文件,解压,可直接运行cmake_gui:

 

第二步: 示例代码的下载

下载网址:https://github.com/danginsburg/opengles3-book/

直接下载整个压缩包即可。

注:为了方便下一步进行编译,我新建build跟code文件夹,其中code里面存放下载的代码,build存放下一步cmake编译出来的文件。

OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

 OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

 

第三步: OpenGL ES 仿真程序的下载

书中下载的是Qualcomm Adreno SDK, 需要去官网进行下载:

https://developer.qualcomm.com/software/adreno-gpu-sdk

需要注意,要先注册才可以。注册所用密码必须有大小写构成!这个我注册好多次,不知道为什么有的邮箱不行,而且密码要求很多!!不科学!

下载安装后如图所示:

 OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

第四步: cmake编译

运行cmake-gui,如图所示,需要添加源代码的位置(我这里是第二步中code的位置)以及构建二进制代码的位置(build的位置,因为cmake构建代码时不会自动新建文件夹,所以要提前建好)。

OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

因为要使用安装到D盘的Qualcomm Adreno SDK,所以必须在上图中添加变量:

EGL_LIBRARY: D:/AdrenoSDK/Development/Lib/x64/libEGL.lib

OPENGLES3_LIBRARY: D:/AdrenoSDK/Development/Lib/x64/libGLESv2.lib

点击configure,generate ,完成生成。成功后会在build位置出现.sln的文件。

 

第五步: 运行程序

到上一步cmake编译后生成的目录下(D:/opengles3-book-master/build)寻找生成的sln解决方案,用VS打开生成解决方案。

如果要运行其中的小示例程序,关掉VS,找到\Build\Chapter_2\Hello_Triangle目录,运行Hello_Triangle.vcxproj。这时候会报许多错误,如下是解决办法:

1.把opengles3-book-master\External\Include 和opengles3-book-master \Common\ Include  里面的所有文件 拷贝到 MicrosoftVisual Studio 12.0\VC\include下(vs的安装目录)。如图所示:

OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

2. 把AdrenoSDK安装目录下的 libEGL.lib 和 libGLESv2.lib 拷贝到 Microsoft Visual Studio 12.0\VC\lib路径下。如图所示:

 OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

3.进入cmake生成的Build文件夹里面,找到Build\Common\Debug\Common.lib, 拷贝到 Microsoft VisualStudio 12.0\VC\lib路径下。

注:由于该步骤中的common.lib可能会与以后工作过程中用到的其他程序相冲突,该步也可换成如下操作:

打开VS的工程,进入工程属性栏,(在解决方案窗口里右键项目),然后选择VC++目录选项卡,把该lib的地址添加进去,位置如图所示:

OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

4.把AdrenoSDK安装目录下的libEGL.dll和libGLESv2.dll拷贝到Microsoft Visual Studio 12.0\VC\bin目录下。

 OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

!!!同时把上述三个dll文件拷贝到下面的三个文件夹里(因为不清楚为啥报错,所以三个文件夹中都拷过去)然后点击计算机的开始-》运行-》libGLESv2.dll ,达到**dll文件的作用。这个地方,教程中说只需要拷贝到syswow64中即可,但是总是报错找不到dll文件,把三个文件夹中都拷入后该问题得到解决!!

OpenGL ES 平台搭建教程(在包含Visual Studio 的Microsoft Windows 上构建)

5. VS工程中,点击链接器-》输入-》修改附加依赖项,加入libGLESv2.lib;libEGL.lib;Common.lib;,用分号隔开。如果链接器中已经包括,则不需要。

!!!6. 如果是VS2013,还需要去下面网址下载更新包才可以:

https://www.microsoft.com/zh-cn/download/details.aspx?id=40784 

这个bug找了很久才找到,是因为高通的那个驱动不支持VS2012 VS2013,下载微软的更新后问题得到解决!!!