我想這樣做:在窗體上旋轉的立方體。我不想使用任何外部庫或DLL,只是純.NET 3.5(不包括directx)。而立方體只能用線條構建。你能告訴我如何做到這一點?如何在C#中旋轉立方體動畫?
我不想使用外部庫,因爲我不需要> 100 MB的庫來做這件事嗎?我只想製作一個用線條製作的旋轉立方體的動畫。
我想這樣做:在窗體上旋轉的立方體。我不想使用任何外部庫或DLL,只是純.NET 3.5(不包括directx)。而立方體只能用線條構建。你能告訴我如何做到這一點?如何在C#中旋轉立方體動畫?
我不想使用外部庫,因爲我不需要> 100 MB的庫來做這件事嗎?我只想製作一個用線條製作的旋轉立方體的動畫。
您可以嘗試使用WPF團隊發佈的WPF和3D工具源代碼。
研究任務?這可以通過一些簡單的3D數學來完成。您只需要瞭解矩陣代數,3D變換和3D-> 2D視圖變換的基本知識。 DirectX tutorial涵蓋了這個,但你可以谷歌它,你會得到很多其他的教程。
添加:只是爲了澄清 - 我不建議使用DirectX或任何東西。你可以用標準的System.Drawing工具來做到這一點。你只需要瞭解數學,這在DirectX教程中有解釋。
看看WPF的一般情況,它會幫助你用少量幾行代碼來做到這一點。您也可以在Forms中託管一個WPF窗口。
您需要一種方法來表示3d點。除非使用directx或WPF,否則在.NET中沒有現成的結構。
然後用一個標準的歐拉旋轉矩陣應用到點上,得到變換後的點。如果你只做旋轉,你可以用3x3矩陣逃脫,但如果你想翻譯,你最好使用4x4矩陣和均勻點。
在此之後,您需要一種方法將這些3d點投影到2d畫布。取決於您是使用透視還是正交投影,投影矩陣看起來有點不同。
您可以擴展您的要求,爲什麼你不想使用外部庫? OpenGL或DirectX使這種事情比編寫自己的引擎簡單得多。 – 2008-12-09 13:57:43
我已經提出了我的問題。隨時回答。 – 2008-12-09 14:00:21
請先生,你能給我發送代碼 – qui 2008-12-09 14:00:58