當前位置:首頁 » 編程軟體 » osg編譯max

osg編譯max

發布時間: 2024-06-14 23:11:00

『壹』 關於opengl和 osg的問題

簡介
OpenSceneGraph是一個開放源碼,跨平台的圖形開發包,它為諸如飛行器模擬,游戲,虛擬現實,科學計算可視化這樣的高性能圖形應用程序開發而設計。它基於場景圖的概念,它提供一個在OpenGL之上的面向對象的框架,從而能把開發者從實現和優化底層圖形的調用中解脫出來,並且它為圖形應用程序的快速開發提供很多附加的實用工具。

特性

有了OpenSceneGraph,我們的目標是讓所有的人在場景圖技術中受益,無論是商業還是非商業的用戶。它完全是由標准C++程序和OpenGL寫的,充分利用STL和設計模式,發揮開源開發模型的優勢來提供一個免費的開發庫,並且重點集中在用戶的需求上。隨著使用一個全特性的場景圖OpenSceneGraph的關鍵優勢在於它的性能、可擴展性、可移植性和快速開發(proctivity),更具體的來說:

性能
支持視圖投影剔除(view frustum culling),隱藏面剔除(occlusion culling),小特性剔除(small feature culling),細節層次節點(LOD),狀態排序(state sorting),頂點數組,頂點緩沖對象(vertex buffer objects),OpenGL著色語言和顯示列表(display lists),以上所列都是場景圖內核的一部分。它們共同使OpenSceneGraph成為一個高性能的圖形庫變為可能,OpenSceneGraph也支持繪制進程(drawing process)的定製,比如場景圖的連續細節層次(CLOD)的網格(參見虛擬地形項目和Delta3D)。
快速開發
場景圖的內核封裝了包括最新擴展的大部分OpenGL功能,提供諸如剔除和排序的渲染優化功能,同樣提供能快速開發高性能圖形應用程序的一整套補充庫。應用程序開發者可以更關心實質性內容和如何操控這些它們,而不再是底層的代碼

??? 通過學習已有的場景圖,比如:Performer和Open Inventor,把它們同像設計模式這樣現代軟體工程理念聯合起來,加上早期開發周期中的大量反饋信息,設計一個清晰的可擴展的庫已經成為可能。用戶可以很簡單的適應OpenSceneGraph並且把它集成到自己的應用程序中
數據裝載
為了讀入和寫出資料庫,有一個資料庫的支持庫(osgDB)增加了通過後綴名動態插件機制,從而支持大量數據格式,目前的發布版本有55種單獨的插件支持3D數據和圖像格式的裝載。支持的3D數據格式包括COLLADA, LightWave (.lwo),Alias Wavefront (.obj),OpenFlight (.flt), 多線程頁面調度支持的TerraPage (.txp),Carbon Graphics GEO (.geo), 3D Studio MAX (.3ds), Peformer (.pfb),AutoCAd (.dxf), Quake Character Models (.md2). Direct X (.x), and Inventor Ascii 2.0 (.iv)/ VRML 1.0 (.wrl), Designer Workshop (.dw) ,AC3D (.ac) 和自帶的.osg ASCII 文本格式。支持的圖像格式包括.rgb, .gif,.jpg, .png, .tiff, .pic, .bmp, .dds (包含壓縮的一系列Mip貼圖影像),.tga and quicktime (在OSX環境下),全范圍的高質量、抗鋸齒字體也能通過freetype插件支持,基於字體的圖像也可以通過.txf插件支持。
用戶也可以通過與我們同行的一個項目(VirtualPlanetBuilder)生成大規模地形空間數據(multi GB),使用OpenSceneGraph的自帶數據分頁調度支持來查看這些數據。
節點工具箱
這個場景圖同樣有一套節點工具集,它們是可以在你的應用程序中編譯或者在運行時裝載的獨立庫,它們增加支持粒子系統(osgParticle),高質量抗鋸齒文本(osgText),特效框架結構(osgFX),陰影框架結構(osgShadow),交互控制(osgManipulator),與虛擬模擬相關的效果(osgSim)。
可移植性
場景圖的內核已經被設計成盡量少的依賴具體的平台,很少的部分超出了標准C++程序和OpenGL。這就使得這個場景圖可以快速移植到大部分系統中—最開始在IRIX開發,然後移植到Linux,接著到Windows,再後來就是FreeBSD, Mac OSX,Solaris,HP-UX, AIX 甚至是PlayStation2!
完全獨立與窗口操作系統的場景圖內核庫使得用戶在它上面可以增加他們自己的指定窗口庫和應用程序,在發布版本中osgViewer庫提供自帶窗口支持,可支持Windows (Win32), Unices (X11) 和 OSX (Carbon)。osgViewer庫也可以輕松的和你的窗口開發包集成起來,作為OpenSceneGraph-2.0發布版本的一部分,有例子演示了如何在Qt, GLUT, FLTK, SDL, WxWidget, Cocoa and MFC中的使用。場景圖內核的可擴展性使得它不僅僅可運行在攜帶型設備,甚至高端的多核、多GPU的系統和集群上。這可能是因為場景圖內核為OpenGL的顯示列表和紋理對象支持多重圖形渲染環境(multiple graphics contexts),剔除和繪制的遍歷過程被設計成隱藏渲染數據為局部變數,這樣可以以幾乎只讀的方式使用場景圖內核。這樣就允許多對剔除—繪制過程運行在多個CPU上,CUP也是綁定在多個圖形子系統之上。對多圖形設備渲染環境和多線程的支持可以在osgViewer中方便使用,發布版本中所有的例子都可以以多線程和多GPU的方式運行。作為社區項目,OpenSceneGraph支持多種語言,比如Java,Lua和Python。

『貳』 OSG是什麼的縮寫

OpenSceneGraph
OpenSceneGraph(簡稱OSG)使用OpenGL技術開發,是一套基於C++平台的應用程序介面(API)。OpenGL技術為圖形元素(多邊形、線、點……)和狀態(光照、材質、陰影……)的編程提供了標准化的介面。而OSG開發的主要意義在於,將3D場景定義為空間中一系列連續的對象,以進行三維世界的管理。正是由於場景及其參數定義的特點,通過狀態轉化、繪圖管道和自定製等操作,OSG還可以用於優化渲染性能。

可以運行OSG的平台需要具備OpenGL的支持能力,以及C++的編譯環境,支持OSG的系統包括Solaris,IRIX,Windows,Mac OSX,HP-UX,Sony Platystation等等,不過XBox除外。

和OpenGL類似,OSG的核心並沒有提供窗口系統的功能。因此用戶可以自由選擇所需的圖形開發介面,如GLUT,X11/Motif,Win32,MacOS X,Qt,wxWindows,Fox等。

OSG採用以下思想和工具進行構建:
· ANSI標准C++;
· C++標准模板庫(STL);
· 設計模式(Design patterns)。
這些工具使得OSG的開發者可以在自己喜好的平台上進行開發,並且依據用戶所要求的平台進行配置。

OSG是一個開源系統,主要包括場景圖形核心,Procer庫,OpenThread庫以及用戶插件四個部分。自Robert Osfield主持這個項目以來,OSG就作為一個開放源代碼的圖形開發工程開始在全球運作了。

目前,部分高性能的軟體已經使用了OSG來渲染復雜的2D和3D場景。雖然大部分基於OSG的軟體更適用於可視化設計和工業模擬,但是在使用3D圖形的每個領域,都已經出現了OSG的身影。這其中包括了地理信息系統(GIS),計算機輔助設計(CAD),建模和數字內容創作(DCC),資料庫開發,虛擬現實,動畫,游戲和娛樂業。

OpenSceneGraph的開發及免費下載網址為:http://www.openscenegraph.org/

熱點內容
c語言遞歸排列 發布:2024-11-26 18:50:55 瀏覽:448
密碼鎖為什麼不建議用南孚 發布:2024-11-26 18:45:00 瀏覽:153
榮耀20s安卓版本在哪裡看 發布:2024-11-26 18:26:03 瀏覽:685
安卓手機前攝像頭進灰怎麼清理 發布:2024-11-26 18:23:08 瀏覽:173
kettlejava腳本 發布:2024-11-26 18:05:07 瀏覽:455
c語言關機命令 發布:2024-11-26 17:59:56 瀏覽:901
wmi文件夾 發布:2024-11-26 17:55:55 瀏覽:534
c語言乘積函數 發布:2024-11-26 17:43:23 瀏覽:187
unix與linux的關系 發布:2024-11-26 17:38:37 瀏覽:464
中恆牌密碼鎖初始管理密碼是多少 發布:2024-11-26 17:34:54 瀏覽:296