簡體   English   中英

將Open GL ES與iOS混合

[英]Mixing Open GL ES with iOS

我想學習適用於iOS的Open GL ES。 我聽說Open GL ES主要是用C ++或C編寫的。iOS應用是用Objective-C或Swift完成的。 我是否可以使用C ++中的Open GL ES渲染圖像和對象,並將其與Objective-C中的iOS部分結合在一起。

另外,如果有可能,我是否會在Xcode中使用C ++做Open GL ES部分,還是使用另一個IDE? 然后顯然將Xcode用於iOS部分。

對於“ OpenGL ES主要編程語言”是什么語言,這對您沒有影響。 重要的是API是什么樣的。 根據使用的語言,iOS上的API有所不同。 ObjectiveC將使用C(不是C ++)中的幾乎所有API,其余的均使用ObjectiveC(上下文包裝和掛接到UIView )。 另一方面,Swift在API周圍使用Swift包裝器,這通常是一件很麻煩的事,並且結合了Swift中的數據和緩沖區結構,我會(現在)不鼓勵您使用Swift。 您的應用程序可能仍在Swift中,但我建議至少openGL部分在ObjectiveC中,然后橋接到Swift以供使用。

使用ObjectiveC時,您可以立即使用標准C的所有功能。 如果要使用C ++,則需要設置某些標志,但是有一種非常簡單的方法可以使Xcode通過將“ .m”文件重命名為“ .mm”來為您執行此操作。 這些將默認使用C ++。

無論使用哪種語言,我都建議您將Xcode用於openGL部分。 在友好的自動補全功能旁邊,您可以使用各種不錯的工具來調試和分析產品。

您也有一些由Apple設計的庫,而且大多數都是在GLKit中設計的。 它們中的一些非常有用,例如處理矩陣,但是一旦達到特定的開發點,其他所有東西或多或少都會歸結為“不要使用它”。

但是,既然您說您只是開始學習,我建議您簡單地從教程和文檔中查看一些示例。 實際上,Apple原始的openGL ES文檔中的所有代碼片段和說明都給人留下了深刻的印象(與其余文檔相比)。 因此,您可以使用其中的任何一種,也可以使用某些StackOverflow,並且您應該立即上路。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM