由于项目开发,需要处理OSGB格式的数据,因此着手配置OSG环境。有过opencv环境配置的经验,但从未接触过OSG,网上的很多配置教程流程基本正确,但有一些细节写的不够详细,致使配置过程中踩了不少坑。在这里做一个记录,以便下次配置需要。
配置版本说明:Win10+VS2013+OSG3.4.0
在D盘新建一个OSG的文件夹,然后将下载的文件放在这个文件夹下:
D:\OSG\OSG3.4: OpenSceneGraph-3.4.0.zip解压后的文件路径,方便查看手动改了文件名为OSG3.4 。
D:\OSG\3rdParty: 3rdParty_VS2013_v120_x86_x64_V9_full解压后的路径,同样手动改了文件夹名称为3rdParty。
D:\OSG\data: OpenSceneGraph-Data-3.4.0.zip解压后改名为data。
最后运行cmake-3.13.5-win64-x64.msi 安装CMake
安装完Cmake之后,打开CMake -gui.exe
将OSG3.4里头的CmakeLists.txt,拖到Cmake界面,或者在"Where is the source code"中选择OSG3.4文件夹,即CmakeList.txt的路径。
为方便新生成文件整理,在OSG3.4下新建build文件夹,在"Where to build the binaries" 中将路径选为build内的路径。(也可以不建立新文件夹,生成的文件会和源码掺在一起)
点击Configure,选择Visual Studio 12(VS2013)、
注:这里选择的是你自己的VS版本,要根据需要选择
finish后,等运行框显示Configuring done,进行相关设置:
ACTUAL_3RDPARTY_DIR 值设为:D:/OSG/3rdParty/x86;
BUILD_OSG_EXAMPLES :勾上 ;
CMAKE_INSTALL_PREFIX :D:/OSG/OSG3.4;
点击Configure后,等配置完成,将Advanced打勾,
将BUILD_MFC_ EXAMPLE设置为on,然后再点击Configure进行最后一次的配置。
配置完成后,点击Generate,自此建构完成。
注意:ACTUAL_3RDPARTY_DIR 第三方库目录选择 D:/OSG/3rdParty/x86,即使你的系统是64位的,但你的vs2013的平台如果用的是Win32,就要选择x86. 在这里踩了一次坑,五个小时浪费了,又重头配。
用VS2013打开D:\OSG\OSG3.4\build下的OpenSceneGraph.sln文件,第一次打开加载会有些慢
等加载完成后,选择生成-批生成,选择Debug和Release两个版本的ALL_BUILD,然后点击生成,如果是第二遍搞,可以点击重新生成。这一步超级慢,大概要等三五个小时,可以去做点别的。
如果上述步骤都正确,这一步会有些提醒,但不会报错。如果报了某些dll或库文件缺失的错误或者不确定错误是什么造成的,可以先把后边的步骤做完测试一下,没准就能用了,这一步很迷,鉴于我也是新手,解释不了,以后弄懂了再来补充。
上一步完成后,再一次点击生成–批生成,选择Debug和Release两个版本的INSTALL,然后点击生成,对INSTALL也进行相应生成编译。这段时间会稍微短一些。
(同样可能会报一些库缺失的错误)
生成成功后,D:\OSG\OSG3.4\build下的include、bin、lib里面会得到很多东西,这也是我们需要的东西。
但这个build下的include、bin、lib三个文件夹里的东西是不完整的,需要自己同D:\OSG\OSG3.4下对应的include、bin、lib文件整合起来才能用。
在以上都准备好之后,在我的电脑-属性-高级系统设置 中配置环境变量。
文件名最后一个字母为“d”的为Debug版本所使用的,没有“d”的为Release版本所使用的。 可根据需要加入自己要用的库
4. 最后,在cpp中,输入以下代码:
#include "stdafx.h"
#include<windows.h>
#include<osgViewer/Viewer>
#include<osgDB/ReadFile>
int _tmain(int argc, _TCHAR* argv[])
{
osgViewer::Viewer viewer;
viewer.setSceneData(osgDB::readNodeFile("cow.osg"));
return viewer.run();
}
若运行过程中,系统提示缺失zlib.dll和zlibd.dll, 这两个分别对应Release和Debug版本
这两个dll可在OSG依赖的第三方库3rdParty文件夹中找到,注意x86与x64选择,然后复制到C:\OSG\bin下。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章