[心得] 看看你的顯卡和電腦夠不夠力

看板C_Sharp (C#)作者 (.)時間9年前 (2015/10/21 00:39), 9年前編輯推噓2(200)
留言2則, 2人參與, 最新討論串1/1
https://dl.dropboxusercontent.com/u/61164954/project/RenderingTest/index.html 這是C#結合 GDI+ , Native GDI , DirectX 三者rendering 2D畫面速度的比較... 原本還要加上 opengl版本 ,不過目前 C#上比較完善高效率的opengl wrapper Opentk 顯示到panel上點問題,我try不出來.... 不然就是得用它自己的顯示元件, 不然就是用它自己的game window...所以就不加入測試了 (c#有幾個大小款opengl wrapper,但完成度.使用方便性.效能狀況都很不明... 比較可靠的為opentk,當然opentk不只是針對opengl... 目前opentk似乎還沒辦法像前三者自己顯示到特定UI元件上) 每台電腦這三者高低差異都滿大的...很奇怪的是 GDI+ 在某些電腦 800 *600 狀態下會跟Native GDI差不多甚至更快....某些Native GDI是遙遙領先GDI+, 當然最快的就是DirectX.... 不過可能是我sample的寫法不是很正確, 某些電腦跑DirectX sample會有memory leak問題..... GDI跟GDI+都得使用bitmap特定元件 directx可以存取記憶體中的array c#的bitmap元件set或是get pixel都很慢...除非以指標方式操作 最方便的應該還是直接用array來當成為bitmap畫面資料最快... 這幾個測試方式都是以已經有特定的bitmap資料或是畫面array, 建立特定物建去生成畫面,所以嚴格說起來這不單單是測試顯示時間, 還包括處理顯示之前的過程,但不確定這樣的測試觀念正不正確... 或是還要補充啥的.... ps.這些sample是網路上找,整理,改寫出來的...給需要的人參考 PS.想抱怨一下...初入directx,發現僅止於顯示一張靜態畫面都有一堆前置作業.. 網路上c# invoke directx的教學資源也少....這sample sharpdx的部分, 花好久時間才摸出來.....sharpdx官方的sample層層一層包一層,霧裡看花, 總算是拆解出來,最簡化步驟...方便人家入門的教學sample搞成這樣不是很方便阿... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.70.74.143 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1445359195.A.60B.html ※ 編輯: erspicu (61.70.74.143), 10/21/2015 00:44:30 ※ 編輯: erspicu (61.70.74.143), 10/21/2015 00:48:42

10/21 21:16, , 1F
先推
10/21 21:16, 1F

10/25 21:10, , 2F
10/25 21:10, 2F
文章代碼(AID): #1M9cvROB (C_Sharp)
文章代碼(AID): #1M9cvROB (C_Sharp)