OSG學習 osg概述以及學習方法等

2021-05-05 11:54:18 字數 1339 閱讀 5594

osg 即openscenegraph的簡稱.是一款開源的場景圖形庫.同時它也是跨平台的..osg它基於場景圖的概念.利用了軟體開發當中的設計模式的理念,設計並提供了乙個基於opengl底層的物件導向的圖形開發框架..

osg是完全由標準c++和opengl而寫的.充分利用stl和設計模式的特性,可以說是具有高效能,可擴充套件,可移植的特性.就目前來講似乎是越來越流行起來的一款非常棒的場景圖形庫.仍需要更詳細的解釋方可去官方**等檢視》_<..

1.由於osg是開源的,現在已經發展到了2.9版本了.**量也日趨遞增的趨勢.而缺少完善的文件.所以說通讀**已經是件非常痛苦的學習過程.但是這依然是個最主要的方式之一.任何的解釋你都可能在**中得到解答.

2.其次 英文版的官方** 和中文的官方論壇也是乙個學習的地方.在osgchina論壇常會得到array和flysky兩位版主的詳細解答和建議..osg英文官方**

osg中國官方**

3.郵件列表..列表當中都是一些很經典的問題.你可以通過郵箱訂閱來獲得.說真的,我也沒怎麼細看....英文水平不高》_<.所以呢還在惡補著英語... 郵件列表位址

4.有個非常著名的教程..美國海軍關於osg的教程..nps...教程位址 .

沒想到居然換了個位址害我找了半天》_<..ofcourse english. 中文版的譯文你可以在osgchina的論壇裡找的到.但好像不全面.

5. osg源**中的所有例子 examples...

6. 其次呢,掌握一定的opengl基礎也是非常好的學習前提.我就是這兩個同時一起學的》_<,

1.第乙個重點則是場景管理的能力.可以理解成是一顆場景樹.

2.osg的場景圖形單執行緒/多執行緒 渲染 (渲染過程分為:狀態樹和渲染樹)

3.osg中實現很多非常實用的工具呀,模型讀取等.並不需要我們自己寫很多**去實現這方面的內容.

4.osg整合所有的opengl的狀態和shader的一些內容..還有矩陣運算等.

還有許多內容我並沒有說的到》_< 因為我只是看了乙個月的**和資料..也沒有完整的寫過很多程式.所以我依然還在學習當中.>_<

基於以上我們可以認為.osg是乙個非常實用的高層圖形應用.

關於1.2兩部分內容你可參考.array版主的某篇大作:《最長的一幀》 詳述了osg當中一幀當中發生的所有事情..

關於第三.部分 主要的集中 osgdb和osgutil 這兩個庫當中.

關於第四部分   opengl狀態集合主要是 osg/stateset 和 osg/stateattribute  osg/shader  osg/matrix等許多類當中整合了.

這是我目前所能說明的一些》_< 畢竟我也只是初學者..

我會將這些天以來的學習以及**的閱讀過程中一些總結甚至體會寫下來...

OSG學習日記01

環境配置 參考部落格win10系統下0sg vs2017環境配置 在環境配置好後輸入部落格中的 include stdafx.h include include int main int argc,char argv 出現編譯錯誤 1 d windows kits 10 include 10.0.1...

osg學習(三十九)DisplaySettings

displaysettings是osg的全域性單例項變數,類似osg的registry。主要記錄視窗的一些顯示設定,比如視窗尺寸 多重紋理取樣數等,osg在建立視窗時會從該變數中讀取資訊,這個變數中的資訊可以通過命令列輸入也可以通過環境變數輸入,但是不支援通過 修改 也可以通過如下方式設定 這個設定...

OSG學習筆記15 OSG中對事件的處理

看了王銳大大的書,我感覺osg中對事件的處理主要是由以下幾塊組成的 1 事件介面卡 guieventadapter 這個類是作為系統互動事件和osg互動事件的適配介面。這一句話還不是很理解。原始碼文件裡對於這個類的定義是 事件類,儲存鍵盤 滑鼠和視窗事件。公有型別包括 這些型別都是列舉型別,每個型別...