有趣的OpenSceneGraph之旅

这年头啥都不容易。好不容易遇到一个非常感兴趣的stage,结果还没面试,先给来了两道编程题。 题目到不是很难,不过要使用的这个类库我确实是一点都不了解。不过人家也在邮件了说了,出这种题目的理由就是为了测试自主解决难题和自我学习的能力。好吧,那么让我们开始吧。


磨刀篇

OpenSceneGraph是一个开源的场景建模C++库。在某些方面还算流行,不过今年来有些底气不足。 和众多开源项目类似,最大的问题就是文档老旧残缺,各种函数说明语焉不详。 在这里我想瞎扯几句,好的文档是一个项目成功的必然条件。君不见PHP,Python等等文档都做得非常优秀。每个函数都有具体的讲解,下面还附带应用实例。PHP的文档又更出色一些,除了官方解说还允许用户留言。下面能找到许多关于该函数的最佳实践。与此相反,第一次搜索OSG文档的时候,我实在是倒抽了一口冷气。这他喵的也能叫文档?无非把函数接口用列表列出来而已,无实用说明,无具体实例。不得不说作者实在是惜字如金,看这意思是让我们自己一个一个试?还是直接看源代码?这尿性连OpenCV都不如阿……

撇开文档暂且不说,这样的开源项目通常都非常难安装。用作者的话说就是把编译的选择和快乐留给用户,稍微直白的翻译下,他的意思就是你们能不能装我不知道,反正在我的电脑系统上是可以的。回想当年编译OPENCV的痛苦……这难不成又要折腾一次?

你们也太小看小哥我了,自从有了上次的经验,哥再也不会SB的自己编译源代码了。APT GET INSTALL解决一切! 当然了,Ubuntu库中的版本不是很新,只要不追求最新的功能,但用稳定版开发也不错嘛。

于是,

sudo apt-get build-dep openscenegraph

稍等片刻就完成了。 要说UBUNTU比MAC OSX唯一强的地方就是这里了,包管理实在是太方便了阿浑蛋!

装好之后用osgversion确认一下,如果返回类似下面的东西就标示安装顺利完成了:

OpenSceneGraph Library 3.0.1

那么来看看包和头文件都安装到哪里了吧:

pkg-config --libs openscenegraph
pkg-config --cflags openscenegraph

下面可以设置一下环境变量,告诉OS去那里找需要的库和头文件:

export OSG_FILE_PATH=/usr/bin/data
export LD_LIBRARY_PATH=//lib
export PATH=//include

有了这些信息我们就可以开始开发了。我使用的是免费又好用的Eclipse CDT, 新建一个project, 然后在project属性中做如下设置:

好了,下面就可以慢慢玩了。如果心情好了我在慢慢更新吧。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,885评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,263评论 4 61
  • 从开始学英语起我一直都非常喜欢英语,喜欢跟着英文歌曲去积累英语词汇,汇总并排列这十几年来收集的25首以A-Z为首字...
    柳木雨阅读 13,108评论 22 129
  • 我梦见你 梦见的是背影 我轻拍你的肩 你不惊讶,像你知道我会出现 你说你刚刚做了一个梦 你说你梦见跟熟悉的人说着伤...
    追求什么阅读 127评论 0 1
  • 【通读一本书】 “ 可以赚到更多的钱。如果不这样做,对比原理不仅不能发挥其应有的作用,而且还会起相反的作用。如你...
    赵恩会阅读 386评论 0 0