我是靠谱客的博主 机灵香烟,最近开发中收集的这篇文章主要介绍基于Win10+VS2017的OSG3.6.5编译部署前言:编译前准备软件环境:编译前准备源码:构建流程:编译流程:使用流程:编码验证:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

前言:

编译前准备软件环境:

编译前准备源码:

构建流程:

编译流程:

使用流程:

编码验证:


前言:

朋友搞 Qt 搭配 OSG 进行开发,自己本地试了下配置 OSG ,浪费了一天时间,头疼。。记录一下,方便后来的小伙伴儿。。

编译前准备软件环境:

1、Windows10系统

2、CMake(最新版)

3、VS2017(OSG官网配套第三方库,最高只能到2017这个版本)

4、Git(最新版)

关于硬件,配置越高越好吧(我的是 i7 10700k,OSG都要编译三个小时,日!)

编译前准备源码:

去官网依次下载源码、第三方库和数据资源(资源下载竟然也要TMD三个小时!!日!)

源码下载最新版(我下载时3.6.5)

下载完毕,将解压后的文件夹放进D:OSG 目录下,这是源码加资源下载后的截图:

但是我看见x64不舒服,就把3rdParty_x64改为3rdParty,并且将其目录下的x64目录下的文件往上提一级,然后删除x64空文件夹。

由此图的样子:

改为此图的样子:

至此,源文件准备结束。

构建流程:

1、打开CMake-GUI,将D:OSGOpenSceneGraphCMakeLists.txt拖动到CMake-GUI界面上,在生成目录后加一层/build目录,点击configure。

新弹出框选择VS2017,Optional platform for generator 输入x64,点击Finish。

2、Finish执行结束,进行二次设置。

ACTUAL_3RDPARTY_DIR:D:/OSG/3rdParty 
BUILD_OSG_EXAMPLES :勾上 
CMAKE_INSTALL_PREFIX:D:/OSG/OpenSceneGraph/

点击Configure。

3、Configure执行结束,将BUILD_MFC_ EXAMPLE打勾,点击Configure。

4、点击Generate,自此建构完成,结束后可以关闭CMake-GUI。

编译流程:

1、用VS2017打开OpenSceneGraph.sln(此文件在D:OSGOpenSceneGrapbuild下)

2、菜单栏,点击“生成”、“批生成”,勾选ALL_BUILD对应的Debug和Release,点击“生成”。生成过程超TM长,大概两个多小时。

注:编译过程会遇到一些报错,百度一下基本都有答案(我只遇到了俩,在下面)

如:① 报std::max不识别,在对应头文件加#include <algorithm>;

② 报 “LCMapStringEx”: 找不到标识符,生成的stdafx.h头文件添加

#define _WIN32_WINNT 0x0A00
#define _ATL_APARTMENT_THREADED
#define _USING_V110_SDK71_
#define _ATL_XP_TARGETING

并在所在工程(一共两个,分别是 Examples osgsimplegl3Examples osgviewerMFC )的属性配置(Debug和Realse都需要)里,添加

_WIN32_WINNT=0x0A00
NTDDI_VERSION= 0x06030000
WINVER=0x0A00

最后,编译成功。

3、菜单栏,点击“生成”,“批生成”,选择INSTALL的Debug和Release,点击“生成”。

使用流程:

1、追加 Path 环境变量:D:OSGOpenSceneGraphbin 和 D:OSGOpenSceneGraphbuildbin 和 D:OSG3rdPartybin(注意,是三个路径!!

2、新加 OSG_FILE_PATH 变量:D:OSGOpenSceneGraph-Data

3、打开cmd,依次输入指令

osgversion(会输出版本号)
osgviewer cow.osg(会输出一张牛像,按键盘 Esc 键可退出)
osglogo(会输出一个英文logo,按键盘 Esc 键可退出)

进行验证。

编码验证:

新建VS2017 C++空工程,添加新.cpp 文件,输入代码:

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

int main(int argc, char **argv)
{
	osgViewer::Viewer viewer;
	viewer.setSceneData(osgDB::readNodeFile("cow.osg"));
	return viewer.run();
}

配置:x64,Debug,

① 添加头文件路径:D:OSGOpenSceneGraphinclude;

② 添加 lib 库引用路径:D:OSGOpenSceneGraphlib;

③ 引用lib库,输入:

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

④ 点击键盘 F5 编译运行,会弹出上面那个牛像图,点击 Esc 键退出。

至此结束,感谢各位花费自己宝贵时间进行观看。。

最后

以上就是机灵香烟为你收集整理的基于Win10+VS2017的OSG3.6.5编译部署前言:编译前准备软件环境:编译前准备源码:构建流程:编译流程:使用流程:编码验证:的全部内容,希望文章能够帮你解决基于Win10+VS2017的OSG3.6.5编译部署前言:编译前准备软件环境:编译前准备源码:构建流程:编译流程:使用流程:编码验证:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部