2013-09-30 50 views
1

我正在爲我的應用程序開發一個用戶界面....我的大多數應用程序都是可移植的,因爲它是用C++編寫的,但今天我開始考慮用戶界面。目前寫在Direct2D中。我想知道在IOS(Ipad)和OSX(MAC)中是否有開發UI的等價物?Direct2D相當於iOS OSX開發

一些足夠高的水平,我可以繪製矩形和圓形,但也足夠低,不像GDI那麼慢。

在此先感謝。

PS。我不想比較哪些更好或更差,我只想知道我有什麼選擇。

+0

這不是真正的問題,可以在這個網站上回答,因爲它邀請討論和個人意見導致質量差的答案。然而,這就是說,如果它是一款遊戲,那麼你可以使用像Cocos2d這樣的跨平臺和合理的性能。如果你想要本地化,那麼你可以在mac/ios上使用[CoreGraphics](https://developer.apple.com/library/ios/documentation/coregraphics/reference/coregraphics_framework/_index.html)。請記住,觸摸和鼠標設備之間的交互模式不同。 – Petesh

+0

我的歉意,我沒有看到這個問題的那種結果。我不是問人們喜歡用什麼,但我有什麼選擇! – Miguel

回答

1

CoreAnimation是一個GPU加速框架。個別視圖被緩存在GPU上。然後,您可以將組合任意轉換應用於它們。這些變換由GPU應用於緩存的圖像。因此,您可以使用CoreGraphics繪製一個圓形,矩形或其他任何形狀,讓CoreAnimation將該位圖存儲在GPU上,然後對其進行轉換。

同樣來自第一方框架的Sprite Kit提供了一個面向遊戲的框架,其中包括遊戲風格(即加速的一次寫入多次讀取的'sprites')和物理等。

OpenGL ES也完全支持。您可以假定2.0始終可用,因爲它是在3GS上引入的,Apple不再接受舊設備的二進制文件。 3.0也可在最新的iPhone上使用。這顯然比Direct2D低很多,但Apple提供的GLKit允許您輕鬆上傳圖像,並通過幾個簡單的調用來模擬舊的固定功能流水線。

在第三方世界中,我猜人們會建議的主要事情是Cocos2d,但是現在它已經在追趕Sprite Kit了。其中,CoreAnimation,OpenGL和Cocos2D跨越iOS和OS X,但有一些細微差別,Sprite Kit已經在iOS上提供,並將在下一個OS X Mavericks中出現。

+0

非常感謝,這是非常豐富的。我需要開始研究一些Cocoa編程,以便移植我的UI代碼。 – Miguel

0

從Cocoa(OSX)和Cocoa Touch(iOS)開始。在使用這些應用程序製作的應用程序中,您可以使用看起來非常適合您的需求的Core Graphics,或者可能矯枉過正的OpenGL。當然,你可以使用許多第三方庫,Petesh提到的Cocos2d就是其中之一。