虽然出生的时候,没有说过“Hello World!”,但是自从走上了编程之路,每一次输出“Hello World!”的时候,都觉得好比中了彩票大奖似的;

  仔细算算,从2012年暑假到现在,经历了3年半的光阴,这段时间,不仅是知识、阅历、成长获得最大的一段,也是人生的一大转折点。在这期间,得以继续深造学习自己的专业,虽然踏入这行的时候,也是调剂来的,但是我用这3年的时间,恶补自己7年的不足;2015年,发生了三件大事,我毕业了,我工作了,我有女票了(三件事的重要程度递增);吃得苦中苦,方位人上人,为自己经历的苦逼和磨难,敬上自己的感激,同时也为生命中支持和鼓励我的人,真心的说一句:感谢有你!

下面进入正题,首先声明环境搭建步骤不是原创的,纪录在此的目的,一是以便之后查看,二来希望对大家有所帮助:

一.相关文件下载

1.1 Osg源码

  OpenSceneGraph的3.0.0.zip(现在最新版已经到3.4了)

  下载链接:http://www.openscenegraph.org/downloads/stable_releases/OpenSceneGraph-3.0/source/OpenSceneGraph-3.0.0.zip

1.2 Osg第三方库

  3rdParty_VC10_x86_x64.zip

  下载链接:http://members.iinet.net.au/~bchrist/3rdParty_VC10_x86_x64.zip

1.3 OSG官方示例数据包

  OpenSceneGraph-Data-3.0.0.zip

  下载链接:http://www.openscenegraph.org/downloads/stable_releases/OpenSceneGraph-3.0/data/OpenSceneGraph-Data-3.0.0.zip

1.4 安装源码工具(虽然写的x86的,但是64位系统也可以用的)

  1.4.1 之前版本下载连接: cmake-2.8.4-win32-x86.exe

  1.4.2 最新版本下载连接: cmake-3.4.1-win32-x86.exe

二、编译环境创建

为了编译的顺利进行,将下载的文件组织如下,在E盘建立一个OSG的文件夹,然后其他文件如下放置:

  E:\OSG\OpenSceneGraph,源码解压后放于此;

  E:\OSG\3rdParty,第三方依赖库解压后放于此;

  注意:这个里面的第三方库一般包含x64和x86的两个版本的,这里要根据你自己的电脑需要选择一个然后把里面的文件复制到3rdParty文件夹中。

     由于本人的电脑是64位的系统,所以我选择的留下了的是“x86”。

      之所以选择x86,也就是32位是因为64位的隐患很大,很多库没有64位的,

      而我也自己亲身实践过,在后面的VS批生成的时候导致ALL_INSTALL出现了2个失败,在后面的直接4个全失败。所以这里我建议选择使用32位的;

  E:\OSG\data,数据包解压后放于此。

三.编译OSG源码

3.1 首先安装CMake,之后打开CMake -gui.exe

  这里要补充说下,因为有些教程里面说到,在创建” E:\OSG\OpenSceneGraph”文件夹之后,

  最好在里面新建两个文件夹,一个叫”build”;一个叫”bin”;

3.2 将源码OpenSceneGraph文件夹里头的CmakeLists.txt,拖到Cmake界面,如图:

  

   然后将“where to build the binaries”设置为,刚刚新建的“build”文件夹,具体如上图。

3.3 点击Configure,选择Visual Studio 10,如下图:

   

  这里需要说的是,因为我上面第三方依赖库我保留的是x86,所以我这里也就自然选择VS10就可以了;

  另外还有一个是VS10 Win64 的那就是要对应之前的第三方依赖库的选择了;

3.4 点击Finish之后,等一下,然后进行相关设置:

  ACTUAL_3RDPARTY_DIR:E:/OSG/3rdParty

  BUILD_OSG_EXAMPLES :勾上

  CMAKE_INSTALL_PREFIX:E:/OSG/OpenSceneGraph/

  如下图:

  

3.5 点击Configure后,等一会;

  然后将Advanced打勾,将BUILD_MFC_ EXAMPLE设置为on,进行最后一次的Configure配置,点击Configure:

  如果这过程中下面的这个区域:

  

  出现了红色的乱码,可能是跟你的VS10的一些默认项目文件存放的路径有关,之所以会乱码,是因为可能上面说到的路径有中文。

  所以,建议不要去修改VS10的一些默认的存放的路径,避免不必要的错误。

  当然随着这步勾选上BUILD_MFC_ EXAMPLE,正常的情况应该是中间区域的红色会全部消失,但是下面的区域你去查看会发现任然有些红色的语句警告,这无关紧要;

  继续进行下一步。

3.6 点击Generate,自此建构完成。

四.编译阶段

4.1 用VS2010打开OpenSceneGraph.sln(此文件在E:\OSG\OpenSceneGrap\build下);

  找到菜单:生成-批生成,对All_BUILD进行生成,选择(Debug和Release两个版本),这段编译时间是很长的,估计2个小时左右,主要看电脑,这的确要很久;

  建议大家要耐心等待,代码好像要走到13000左右差不多就好了,这段时间可以打局LOL或者看看视频之类的,玩笑了。

  

4.2 第1步完成后,再对INSTALL也进行相应生成编译,这段时间很快的:

  

五.数据转移

  在C盘新建OSG文件夹(这个可以放在你想放的地方,不仅仅限于C盘,因为毕竟不是所有人都是把C盘设置的很大,而且不免有些人的C盘是容量不大的SSD)

  将E:\OSG\OpenSceneGraph下的bin,include,lib文件夹,拷贝到C:\OSG下;

  将E:\OSG\data下的数据,拷贝到C:\OSG\data下;

  这几个文件是OSG需要的。

六.环境变量设置

6.1右击“计算机”,然后“属性”,在计算机属性窗口的左边有个高级系统设置,如下图:

  

  点击之后,高级--环境变量,对系统变量设置如下:

  新建一个变量:OSG_FILE_PATH:C:\OSG\data

  追加变量内容:PATH:C:\OSG\bin;

6.2 在命令行(CMD)进行测试:

  osgversion

  osgviewer cow.osg

  osglogo

  注意:测试osglogo时,出现如下错误:

    'osglogo' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。

  这个原因我搜索了一下osglogo.exe,发现它存在于两个地方:

    E:\OSG\OpenSceneGraph\share\OpenSceneGraph\bin
    E:\OSG\OpenSceneGraph\build\bin

  实际上到这一步,已经编译成功,如果觉得非得调出osglogo的话,就把osglogo.exe复制到C:\OSG\bin下面,就可以了。

七.新建OSG项目测试

  7.1  在VS2010下,找到C++,新建WIN32控制台程序;

  7.2 添加一个cpp;

  7.3 输入以下代码:

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

  7.4 右键项目,选择“属性”,选择“VC++目录”,在包含目录添加:C:\OSG\include,在库目录添加:C:\OSG\lib

  

  7.5 打开项目属性的链接器,在输入厘米那,附加依赖项加上:

OpenThreadsd.lib

osgd.lib

osgDBd.lib

osgUtild.lib

osgGAd.lib

osgViewerd.lib

osgTextd.lib

7.6 运行,效果如下图:

  

Congratulations,下面你就可以享受OSG的世界了!

【OSG学习笔记之一:】OSG+VS2010+win7 64位环境搭建的更多相关文章

  1. VSTO学习笔记(三) 开发Office 2010 64位COM加载项

    原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...

  2. WIN7 64位系统搭建WINCE6.0系统遇到的问题

    WIN7 64位系统搭建WINCE6.0系统遇到的问题 安装顺序如下: .先装Visual Studio2005: .安装Visual Studio2005 Service Pack 1: .安装Vi ...

  3. win7 64位环境下,为python2.7 安装pip

    第一步: 安装python并配置好环境变量 参见:http://blog.csdn.net/donggege214/article/details/52062855 第二步: 下载setuptools ...

  4. win7 64位环境下配置汇编环境和程序设计

    下载dosbox,并解压安装 下载地址: http://pan.baidu.com/s/1eRJbJAq 默认安装到C:\Program Files (x86)\DOSBox-0.74 安装成功后,双 ...

  5. GDAL VS2010 win7(64位)安装、使用说明(图文解析)

    一.电脑配置及安装版本 Win 7(64位机) Visual Studio 2010 GDAL 1.9.2(我也尝试了最新版GDAL1.11.0,应该同样可以用的,只是在重新配置时又选用了老一点的版本 ...

  6. HTML5学习笔记<五>: HTML表单和PHP环境搭建

    HTML表单 1. 表单用于不同类型的用户输入 2. 常用的表单标签: 标签 说明 <form> 表单 <input> 输入域 <textarea> 文本域 < ...

  7. VS2010 win7 64位安装后新建项目生成时错误:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

    解决方案:VS2010在经历一些更新后,建立Win32 Console Project时会出“error LNK1123” 错误,解决方案为将 项目|项目属性|配置属性|清单工具|输入和输出|嵌入清单 ...

  8. Cocostudio学习笔记(1) 扯扯蛋 + 环境搭建

    转眼七月份就到了,2014已经过了一半,而我也最终算是有"一年工作经验"了,开心ing. 回想这一年Cocos2dx的游戏开发经历,去年下半年重心主要在游戏的逻辑上,而今年上半年重 ...

  9. React学习笔记-1-什么是react,react环境搭建以及第一个react实例

    什么是react?react的官方网站:https://facebook.github.io/react/下图这个就是就是react的标志,非常巧合的是他和我们的github的编辑器Atom非常相似. ...

随机推荐

  1. js中块级作用域

  2. JavaScript中的事件

    1.冒泡事件:事件按照特定的的事件目标到最不特定的事件目标顺序触发(它是按照DOM的层次节后依次做出的反应) 2.捕获事件:事件从不确定的对象document 开始触发然后到最精确(也可以在窗口级别捕 ...

  3. Python——函数的命名关键字参数

    命名关键字参数 对于关键字参数,函数的调用者可以传入任意不受限制的关键字参数.至于到底传入了哪些,就需要在函数内部通过kw检查. 仍以person()函数为例,我们希望检查是否有city和job参数: ...

  4. oracle 字符转字符串函数

    select cast('addd' as varchar(4)) from dual;

  5. PTA Insertion or Heap Sort

    According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...

  6. 博弈论揭示了深度学习的未来(译自:Game Theory Reveals the Future of Deep Learning)

    Game Theory Reveals the Future of Deep Learning Carlos E. Perez Deep Learning Patterns, Methodology ...

  7. windows10, 安装wamp无法启动服务的问题

    今天在另一台电脑上安装了wamp, 就是这个玩意 结果怎么也启动不起来, 上网上查了一下, 原因是有些windows10的系统上有安装IIS10, 这个也不知道是啥东西, 占用了80端口, 所以启动不 ...

  8. Yii2 中禁用csrf校验

    Yii2 默认开启csrf校验,但是有些时候确实不需要校验,比如对外提供API 一般做法直接在xxController中增加属性: public $enableCsrfValidation = fal ...

  9. ASPNET 导出EXCEL表

    其实网上有很多关于Excel的例子,但是不是很好,他们的代码没有很全,读的起来还很晦涩.经过这几天的摸索,终于可以完成我想要导出报表Excel的效果了.下面是我的效果图. 一.前台的页面图 GridV ...

  10. 以太坊只能合约摸索——第一关,ubuntu开发环境部署

    1. 安装“eth”命令行工具 sudo add-apt-repository ppa:ethereum/ethereum-qt sudo add-apt-repository ppa:ethereu ...