OpenSceneGraph 筆記–世界如此之美好!
來源:互聯網
上載者:User
在用OpenSceneGraph之前我費盡心思成功的把3DS模型裡面的層次關係匯入到我的程式中,學到了不少的東西。昨天在研究OpenSceneGraph的3DS外掛程式的時候發現外掛程式並沒有我想象當中那麼完美,在調入檔案的時候丟失了所有的階層,這令我很懊惱。在嘗試了修改3DS外掛程式以後,覺得要解決這個問題還需要重新寫一個新的外掛程式。當然,這會帶來巨大的工作量,不合算。
今天在吃飯的時候突然想到了OpenSceneGraph自己有一個資料結構,副檔名叫.osg,而且有3DS MAX的匯出外掛程式,是不是這個資料結構能夠提供更多的資訊呢?
帶著試一試的心理下載了OSGExp外掛程式,暈,第一次安裝竟然不行,提示找不到3DS MAX~~想想我裝的3DS MAX 9是中文版的,是不是要原版的才能用哦。遂安裝了英文原版的。呵呵,這下就對了。
從3DS MAX裡面開啟做的機床的MAX模型檔案,然後匯出,很快的就匯出了一個osg檔案。用osgDirector一看,哇!強悍,所有的層次都保留,層與層之間的變換矩陣也很好用!特別是之前很懊惱的3DS模型裡面的pivot屬性也越過了。
最後我在自己的程式裡面試了試,很方便的就能夠讓某些組件繞著軸旋轉或者做平移變換,而代碼卻只有十多行!
想起之前我自己動手寫的一個很簡單的SceneGraph實現,都花費了我很多精力,處理用lib3ds匯入的模型的矩陣變換。然而現在OpenSceneGraph讓一切變得很美好,這下就有精力專註於上層程式開發了!
也肯定之前的工作沒有白費,他們讓我熟悉了矩陣的變換以及一個SceneGraph的原理,這些都為現在學習OpenSceneGraph奠定了基礎!OpenSceneGraph帶給我的只是更多更強大的功能,還有很長的路要走!
另:所有可以匯出為osg格式的檔案都最好匯出成osg,這樣會更有利於開發!