OSG编译安装-MSVC

1、准备工作

1.1 环境

1.2 osg下载

2、Cmake编译

  • 打开Cmake,将OpenSceneGraph文件夹下的CMakeLists.txt文件拖进Cmake中,创建build文件夹并在Cmake中指定路径;

  • 点击configure,选择vs2017、x64(由于下载的依赖库为64位,所以这里如果要编译32位的只能自己编译依赖库),注意如果是安装了多个版本vs,需要选择Specify native compilers,我这里只安装了一个版本;

  • 指定依赖库路径ACTUAL_3RDPARTY_DIR

  • 勾选BUILD_OSG_EXAMPLES(可选择不勾选)

  • 修改安装路径CMAKE_INSTALL_PREFIX

  • 点击configure直到没有红色,然后点击Generate,等待生成VS解决方案,生成完成后点击Open Project打开VS

3、Visual Studio编译

  • 打开解决方案后,选择Debug、x64

  • 右键ALL_BUILD,点击生成,等待两小时就可以编译完成,然后选择Release再编译一次

  • 右键INSTALL,点击生成就可以在之前指定的安装路径下(CMAKE_INSTALL_PREFIX)生成编译好的文件了

  • 将依赖库和数据资源文件拷到编译后的文件路径处

4、添加环境变量

  • 打开系统环境变量

  • 添加如下环境变量,注意路径换成自己的,然后保存

* OpenSceneGraph-Data环境配置:打开系统环境变量,点击新建,输入OpenSceneGraph-Data路径,重启电脑使环境变量生效

5、测试安装

  • 可测试命令

    • osgversion

    • osglogo

    • osgviewer

  • 打开cmd

  • 输入:osgversion

  • 输入:osglogo

  • 输入:osgviewer D:\OSG\OpenSceneGraph-Data\cow.osg 或osgviewer cow.osg

6、Qt程序

  • 新建一个Qt工程,选择编译器位MSVC2017-x64(需要配置)

  • 打开.pro文件,添加下列代码(路径换成自己的)

INCLUDEPATH += D:/OSG/install/include
DEPENDPATH += D:/OSG/install/include

win32:CONFIG(release, debug|release): LIBS += -LD:/OSG/install/lib/ -losg
else:win32:CONFIG(debug, debug|release): LIBS += -LD:/OSG/install/lib/ -losgd

win32:CONFIG(release, debug|release): LIBS += -LD:/OSG/install/lib/ -losgViewer
else:win32:CONFIG(debug, debug|release): LIBS += -LD:/OSG/install/lib/ -losgViewerd

win32:CONFIG(release, debug|release): LIBS += -LD:/OSG/install/lib/ -losgDB
else:win32:CONFIG(debug, debug|release): LIBS += -LD:/OSG/install/lib/ -losgDBd
  • 或者右键工程,选择添加库

  • 选择需要添加的库,然后点击确认即可

  • 添加下列代码

#include "widget.h"

#include <osgViewer/Viewer>
#include <osgDB/ReadFile>

int main(int argc, char *argv[])
{

QString osgPath = "D:/OSG/OpenSceneGraph-Data/avatar.osg"; // 换成自己的路径

osgViewer::Viewer viewer; // 创建查看器
osg::Node * node = new osg::Node;
node = osgDB::readNodeFile(osgPath.toStdString()); // 读取模型文件,赋值给节点指针
viewer.setSceneData(node); // 查看器中添加该节点
return viewer.run(); // 运行查看器
}

  • 编译运行结果如下

7、编译好的库

链接:https://pan.baidu.com/s/1UfNbJ0fUAzKfe3XrWNVTDA
提取码:66tf

OSG编译安装-MSVC的更多相关文章

  1. VS2010 编译安装boost库

    实践是最好的办法..学习C++,想试试线程,然后打算用boost库,结果boost库编译差点吓到我..没看到比较完整的安装教程..一直耽搁.今天动手.完成了.方法记录如下:1.下载boost从boos ...

  2. 实践详细篇-Windows下使用VS2015编译安装Caffe环境(CPU ONLY)

    学习深度学习背景 最近在做一款抢票软件,由于12306经常检测账号状态,抢票抢着抢着就需要重新登录了,然后登录是需要验证码的.所以我最开始是想到了使用java基于感知哈希算法pHash做相似度匹配识别 ...

  3. windows系统,boost编译安装

    windows系统,boost编译安装vs2017 1.下载https://www.boost.org/users/download/下载windows对应的zip包解压 2.配置vc环境变量我的是: ...

  4. nginx的编译安装

    下载源码 wget http://nginx.org/download/nginx-1.15.9.tar.gz 安装开发包组 yum groupinstall "Development To ...

  5. Qt最新版5.12.2在Win10环境静态编译安装和部署的完整过程(VS2017)

    一.为什么要静态编译 用QtCreator编译程序时,使用的是动态编译.编译好的程序在运行时需要另外加上相应的Qt库文件,一大堆dll文件.如果想将生成的程序连同所需要的库一起完整地打包成一个可执行程 ...

  6. Windows 编译安装 nginx 服务器 + rtmp 模块

    有关博客: <Windows 编译安装 nginx 服务器 + rtmp 模块>.<Ubuntu 编译安装 nginx>.<Arm-Linux 移植 Nginx> ...

  7. ubuntu20.04 编译安装ckermit

    ubuntu20.04编译安装ckermit 我呢之前一直使用的是ubuntu18.04,最近在安装了某个软件之后,再加上自己的操作不当最终导致ubuntu系统卡死无法进入桌面环境,早就想更新20.0 ...

  8. PostgreSQL(一) 编译安装运行

    原创,如转发需注明出处. 多年没写博客,一直用的个人笔记软件,最近准备阅读PostgreSQL源码,故记录.(这两年PostgreSQL数据库在某些环境下是比较火的,原因想必大家都清楚.) Postg ...

  9. Centos6.5下编译安装mysql 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  10. CENTOS 6.5 平台离线编译安装 PHP5.6.6

    一.下载php源码包 http://cn2.php.net/get/php-5.6.6.tar.gz/from/this/mirror 二.编译 编译之前可能会缺少一些必要的依赖包,加载一个本地yum ...

随机推荐

  1. Python 爬虫进阶五之多线程的用法

    Python 爬虫进阶五之多线程的用法 作者 崔庆才   发表于 2016-11-03   分类于 Python   阅读次数: 60553   本文字数: 7.5k   阅读时长 ≈ 7 分钟 前言 ...

  2. mmcls/mmdet模型部署至 TorchServe

    mmcls/mmdet模型部署至 TorchServe 官方教程:模型部署至 TorchServe - MMClassification 0.23.2 文档 接口说明: serve/inference ...

  3. 试用阿里云GPU服务器进行深度学习模型训练

    试用阿里云GPU服务器进行深度学习模型训练 最近在用PyTorch时发现在本地训练模型速度一言难尽,然后发现阿里云可以白嫖gpu服务器,只要没有申请过PAI-DSW资源的新老用户都可以申请5000CU ...

  4. React的理解以及特性

    一.是什么 React,用于构建用户界面的 JavaScript 库,提供了 UI 层面的解决方案 遵循组件设计模式.声明式编程范式和函数式编程概念,以使前端应用程序更高效 使用虚拟DOM来有效地操作 ...

  5. JavaScript如何判断一个元素是否在可视区域中?

    一.用途 可视区域即我们浏览网页的设备肉眼可见的区域,如下图 在日常开发中,我们经常需要判断目标元素是否在视窗之内或者和视窗的距离小于一个值(例如 100 px),从而实现一些常用的功能,例如: 图片 ...

  6. 地址标准化服务AI深度学习模型推理优化实践

    简介: 深度学习已在面向自然语言处理等领域的实际业务场景中广泛落地,对它的推理性能优化成为了部署环节中重要的一环.推理性能的提升:一方面,可以充分发挥部署硬件的能力,降低用户响应时间,同时节省成本:另 ...

  7. 疫情带火了这款APP:2600个学生一天点赞70万次

      这几天,全国中小学生经历了"过山车"一样的心情. 因为疫情的不断蔓延,1月27日,教育部下发通知,2020年春季学期延期开学. 随后,教育部又提出"利用网络平台,停课 ...

  8. 在游戏运营行业,Serverless 如何解决数据采集分析痛点?

    简介: 众所周知,游戏行业在当今的互联网行业中算是一棵常青树.在疫情之前的 2019 年,中国游戏市场营收规模约 2884.8 亿元,同比增长 17.1%.2020 年因为疫情,游戏行业更是突飞猛进. ...

  9. Serverless Kubernetes 落地实践

    ​简介:如何通过原生 Kubernetes 提供 Serverless 能力?如何借力丰富的云原生社区生态?本文将给大家介绍一下我们在 Serverless Kubernetes 上的落地实践. 作者 ...

  10. 外部工具连接SaaS模式云数据仓库MaxCompute实战——商业BI分析工具篇

    简介: MaxCompute 是面向分析的企业级 SaaS 模式云数据仓库,以 Serverless 架构提供快速.全托管的在线数据仓库服务,消除了传统数据平台在资源扩展性和弹性方面的限制,最小化用户 ...