一、准备工作

下载需要的材料:

1. OSG稳定版源代码, 3.6.3版本

2. 第三方库,选择VS2017对应的版本  https://download.osgvisual.org/3rdParty_VS2017_v141_x64_V11_full.7z [98.6 MB]

3. OSG3.4的数据包,OpenSceneGraph-Data-3.4.0.zip

4. CMake 编译工具

二、编译准备

建立文件树,如下:

1. 在D盘建立一个OSG的文件夹,再新建四个子文件夹

2. D:\OSG\OpenSceneGraph : 源码解压于此

3. D:\OSG\3rdParty : 第三方依赖库解压于此

4. D:\OSG\data : 数据包解压于此

5. D:\OSG\build : 准备存放编译后的库和头文件等

三、编译准备

1. 打开CMAKE,运行CMake-gui.exe, 选择2017 Win64,填好源码路径和输出结果路径

2. 修改参数

找到ACTUAL_3RDPARTY_DIR,将其值设置为D:/OSG/3rdParty;

找到BUILD_OSG_EXAMPLES,值设置为ON,

找到CMAKE_INSTALL_PREFIX,值为第一步中的结果路径D:/OSG/build。

然后再点config,进行配置。

3. 点Generate,结束。

四、编译

1. 在路径 D:\OSG\build 中找到OpenSceneGraph.sln,双击 在VS2017中打开

2. 生成--批生成--选择项目ALL_BUILD的Debug和Release两个版本,生成

完成后再对INSTALL也进行生成编译,记得取消上一步选的勾

五、环境变量

1. 添加系统变量, 变量名:OSG_FILE_PATH,变量值:D:\OSG\data

2. 在PATH变量中添加第四部结果目录中的bin路径:D:\OSG\build\bin

3. 配置完成后,可以cmd在命令框中输入 osgversion 会出现版本信息

4. 在命令框中输入 osglogo 或者 osgviewer cow.osg ,如果出现 “计算机丢失zlib.dll”问题,在第三方库文件夹下 D:\OSG\3rdParty\x64\bin 找到 zlib.dll 和 zlibd.dll 复制到 D:\OSG\build\bin 中

六、新建OSG项目

1. 在VS2017下新建C++控制台程序

2. 右键项目,选择“属性”,平台选择x64,VC++目录中,包含目录添加 include路径:D:\OSG\build\include; 库目录添加lib路径:D:\OSG\build\lib;

3. 选择左侧“C/C++”中的“预处理器”,在预处理器中增加WIN32;

4. 选择左侧“链接器”中的“输入”,在附加依赖项添加:

Debug项目添加下面:

OpenThreadsd.lib 
osgd.lib 
osgDBd.lib 
osgUtild.lib 
osgGAd.lib 
osgViewerd.lib 
osgTextd.lib

-----------------------------

Release 版本添加下面:

OpenThreads.lib
osg.lib
osgDB.lib
osgUtil.lib
osgGA.lib
osgViewer.lib
osgText.lib

5. 设置完成后,关闭属性对话框,顶部选择“x64”, 并输入一下测试代码:

#include "stdafx.h"
#include <osgViewer/Viewer>
#include <osgDB/ReadFile> int main(int argc, char **argv)
{
osgViewer::Viewer viewer;
viewer.setSceneData(osgDB::readNodeFile("cow.osg"));
return viewer.run();
}

6. 运行,会出现牛!!!配置成功!!!


七 配置Qt到VS2017中

1. 安装完插件后,出现问题

解决办法,卸载掉插件vs addin,重新下载旧版的插件安装。

Windows7 + OSG3.6 + VS2017 + Qt5.11的更多相关文章

  1. VS2017+QT5.11.2+SeetaFace1.0/SeetaFace2.0的简单实现

    SeetaFace开源引擎GitHub地址:https://github.com/seetaface/SeetaFaceEngine SeetaFace2开源引擎GitHub地址:https://gi ...

  2. qt5.11.2+vs2017环境下配置pcl1.8.1以及第三方依赖库vtk的编译

    1.准备工作 我所用的开发环境是win10下的qt5.11.2配置了vs2017的编译器,根据自己所用的VS的版本去官网下载对应版本的pcl库,如下 PCL-1.8.1-AllInOne-msvc20 ...

  3. qt5.11.2+vs2017环境下opencv3.4.1编译配置

    OpenCV是一个开源的计算机库,它可以帮助视觉工作者做很多富有创造性的工作,在图像处理领域扮演着重要的角色.由于opencv3.x的存在,不管你是学生还是研究人员,是专家还是初学者,都可以快速的建立 ...

  4. Qt5.11.1安装与VS2017配置

    Qt5.11.1安装与VS2017配置 转 https://blog.csdn.net/gaojixu/article/details/82185694 文章目录 Qt5.11.1安装与VS2017配 ...

  5. 关于本电脑qt5.11+vs2017+opencv3.4的配置问题

    本人想用qt5.11+vs2017+opencv3.4开发程序,配置了很久才成功,现在把配置后的环境变量记录一下,以供自己以后参考,同时也供大家参考. qt5.11+vs2017+opencv3.4的 ...

  6. Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)

    后记: 由于自己low,没有下载罪行的python3.2导致编译上遇到种种问题,后文可以参考,建议看: <Windows7 VS2015 下编译 PythonQt3.2> https:// ...

  7. QT学习笔记1:VS2015配置QT5.11

    由于工作关系,我又接触到了QT,在之前写过一篇博客是 在vs2017下配置openCV,当时用的是2015做的示范,现在就继续记录一下在VS2015下配置QT吧(VS2017配置是一样的) 第一部分: ...

  8. 记录编译QGIS(3.4+Qt5.11+VS2015)的整个过程

    编译运行整个QGIS耗时耗力,由于本人比较愚钝,来来回回花了大概两个星期最终编译成功,记录一下整个过程,一方面备忘,另一方面可能也给别人一点借鉴. 1.准备工作 参考了许多网上的教程,李民录大神的&l ...

  9. mac book pro macOS10.13.3安装qt、qt creator C++开发环境,qt5.11.1,并解决cmake构建:qt mac this file is not part of any project the code

    因为之前在Ubuntu下使用的是qtcreator开发,现在想在mac上装一个系统,因为许久未装了,还是花了点时间,不如写个博客,下次就更快安装了.在Mac OS X下使用Qt开发,需要配置Qt库和编 ...

随机推荐

  1. Linux环境下用Weblogic发布项目【三】 -- 启动、登陆、停止WebLogic

    一.启动WebLogic: 1.启动前,修改访问端口.IP地址方法: 在config.xml中修改,具体路径如下: /root/Oracle/Middleware/user_projects/doma ...

  2. c++ string写时复制

    string写时复制:将字符串str1赋值给str2后,除非str1的内容已经被改变,否则str2和str1共享内存.当str1被修改之后,stl才为str2开辟内存空间,并初始化. #include ...

  3. 同一台服务器(电脑)运行多个Tomcat

    同一台电脑运行不能同时运行多个未修改过配置tomcat的原因在于:一台电脑的一个端口只能被一个程序使用,多个tomcat启动会因为端口号号被占用的原因而启动失败. 如果想要在一台电脑上同时运行多个to ...

  4. vue-cli中引入jquery的方法

    vue-cli中引入jquery的方法 以前写vue项目都没有引入过jquery,今天群里面的一位小伙伴问了我这个问题,我就自己捣鼓了一下,方法如下: 我们先进入webpack.base.conf.j ...

  5. centos6.8配置FTP普通用户除了家目录外还能访问其他目录

    今天有个需求,使用ftp服务搭建一个文件共享服务器,每个普通用户除了能访问自己家目录的东西,还能访问一个公共的目录.配置步骤如下: 环境如下: 创建用户并配置密码(使用默认家目录/home) user ...

  6. git设置免密码登录

    设置用户名和邮箱 git config --global user.name "<username>" git config --global user.email & ...

  7. 超详细的Java面试题总结(三)之Java集合篇常见问题

    List,Set,Map三者的区别及总结 List:对付顺序的好帮手 List接口存储一组不唯一(可以有多个元素引用相同的对象),有序的对象 Set:注重独一无二的性质 不允许重复的集合.不会有多个元 ...

  8. canvas_基于canvan绘制的双半圆环进度条

    效果图 实现原理: 1.使用canvas绘制两个半圆弧,底图灰色半圆弧和颜色进度圆弧. 2.利用setInterval计时器,逐步改变颜色进度条,达到进度条的效果. 效果代码: <!DOCTYP ...

  9. javascript语言中的一等公民-函数

    简介 在很多传统语言(C/C++/Java/C#等)中,函数都是作为一个二等公民存在,你只能用语言的关键字声明一个函数然后调用它,如果需要把函数作为参数传给另一个函数,或是赋值给一个本地变量,又或是作 ...

  10. windows 上启动appium

    import org.apache.commons.exec.CommandLine; import org.apache.commons.exec.DefaultExecuteResultHandl ...