最近要在c#的語言環境下開發opengl程式,參考了網上的部落格論壇總結如下:
1.在c#中直接呼叫opengl函式比較費事,一般不直接使用;
2.一般的開發方法是借助第三方開源庫,比如sharpgl、csgl、opentk、tao框架等。
下面比較一下sharpgl、csgl、opentk這三種開發框架:
1.sharpgl
sharpgl的主頁:
檔案,解壓之後點選直接安裝,就會在visual studio 2010中整合sharpgl的專案模板,如下圖所示:
對sharpgl的總結如下:
(1)安裝部署方便,可以非常容易的整合到windows forms和wpf中去使用;
(2)存在記憶體洩露的問題,即使執行乙個簡單的程式,內存在不斷增長,當增長到了一定時就不會有太多的增長,由於例程都有這樣的問題,對於我們自己編寫程式,應作適當考慮;
(3)目前sharpgl已經支援到opengl4.2(discussions/431042),在所有的第三方庫中,其支援的opengl版本應該是最高的;
(4)不支援linux和mac平台(discussions/356490)
2. csgl
csgl的主頁:
解決的方法是將csgl.native.dll拷貝至程式執行路徑下。
對csgl的總結如下:
(1)是乙個較為輕量級的庫,執行時占用資源少,響應速度快;
),正因為如此,csgl支援的opengl版 本最低;
(3)csgl只支援32位的程式,無法支援64位,網上並沒有提供64位的dll,這在很大程度上影響了其使用。
3.opentk
opentk的主頁:
對opentk的總結如下:
(1)安裝部署方便,在程式中可以直接引用;
(2)可以支援跨平台的開發,特別是支援opengl es;
(3)支援64位的windows程式開發;
(4)在資源占用和響應速度上雖然比不上csgl,但是優於sharpgl;
(5)對opengl的版本支援在3.3以上。
我的開發要求是支援64位程式開發、對opengl的版本支援較高、執行時占用資源較少、響應速度較快、有比較好的開發文件、有適當規模的開發社群支援等,綜合以上因為考慮,我選擇opentk作為c#環境下的第三方開發庫,在接下來的時光裡,我將記錄學習opentk的點點滴滴……
OpenTK學習筆記
最近要在c 的語言環境下開發opengl程式,參考了網上的部落格論壇總結如下 1.在c 中直接呼叫opengl函式比較費事,一般不直接使用 2.一般的開發方法是借助第三方開源庫,比如sharpgl csgl opentk tao框架等。下面比較一下sharpgl csgl opentk這三種開發框架...
Latex學習筆記 序
在寫 的過程中自學了 latex 想總結一下使用心得。剛開始整理了一下發現非常之亂,不知這麼多零碎的知識該如何整理的有條理點,至少以後用到還能翻翻自己部落格。這次寫作 圖省勁用了ieee的模板,但投的刊物是iet 的,格式要求又不一樣,所以還得在模板基礎上修改一下才能自己用,但是ieee的模板確實是...
DFS序學習筆記
1.定義及理解 dfs序是深度優先遍歷一顆樹的時候產生的時間戳序列,可以將樹形結構有序地轉化為線性結構,從而將樹上問題轉化為線性問題 這時,我們就可以用許多優秀的資料結構,比如維護區間的線段樹 樹狀陣列等方便地處理樹上問題啦!2.重要的性質 1 設in x 表示第一次dfs到x節點的時間戳,out ...