有趣的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閱讀 172,982評論 25 708
  • 發現 關注 消息 iOS 第三方庫、插件、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,198評論 4 61
  • 從開始學英語起我一直都非常喜歡英語,喜歡跟著英文歌曲去積累英語詞匯,匯總并排列這十幾年來收集的25首以A-Z為首字...
    柳木雨閱讀 12,834評論 22 129
  • 我夢見你 夢見的是背影 我輕拍你的肩 你不驚訝,像你知道我會出現 你說你剛剛做了一個夢 你說你夢見跟熟悉的人說著傷...
    追求什么閱讀 127評論 0 1
  • 【通讀一本書】 “ 可以賺到更多的錢。如果不這樣做,對比原理不僅不能發揮其應有的作用,而且還會起相反的作用。如你...
    趙恩會閱讀 382評論 0 0