天天看點

iPhone遊戲開發筆記(一):使用到的工具和技術

 從小到大都有遊戲夢,是以希望能開發出自己的遊戲。iPhone遊戲開發主要用到這些技術和工具:Objective-C或C/C++, Xcode, UIKit, Quartz 2D, Core Animation, OpenGL, audio APIs, networking, GameKit。

開發工具與環境

    iPhone開發使用的語言是objective-c。objective-c是c語言的擴充,給c簡單直接的面向對象的特性。iPhone所有的api接口都是用objective-c實作的,但是也有些非接口部分是使用c/c++實作的。是以你需要熟練使用objective-c,對c/c++也有一定的了解。

    開發工具是Xcode,是一款功能強大的IDE。

UIKit

   UIKit提供了一種最簡單的方式來繪制圖形和UI元素。使用UIKit顯示和定位位圖是非常簡單的,由于低層的硬體加速,速度還是蠻快的。對于遊戲開發,圖形和動畫很少的遊戲,使用UIKit是個非常不錯的選擇。

   下圖是款完全使用UIKit開發的小遊戲,沒有直接用到OpenGL ES。它也有有大量圖形和動畫元素,它幾乎接近了UIKit中可以做到的圖形幀速率限制。如果你想添加更多的圖形,那麼你就要使用OpenGL ES ,來確定它能快速的運作在所有的裝置上。

   下圖也是一個有UIKit開發的遊戲。它不需要OpenGL ES提供的強大的圖形渲染功能。它是一個文字的遊戲,隻要一個很小的背景動畫。是以UIKit非常适合這樣開發。

Quartz 2D和Core Animation

    Quartz 2D也被稱為Core Graphics。它提供了一個更為進階的,更底層的繪制引擎。Quartz 2D提供了很多有用和強大的功能,如螢幕渲染,透明層,繪制線條。這些功能派上用場了,許多遊戲開發者不喜歡螢幕上畫雷達,迷你地圖,彎曲的路徑,和其他UI元素的東西。雖然它可能用于渲染的一個遊戲的主要内容過于緩慢,但是Quartz 2D也是iPhone開發者的的寶貴工具。

    Core Animation為開發人員提供了一種移動和轉換UI元素最省力的方法。使用Core Animation,你能夠建立硬體加速,使用位置,旋轉,透明度等屬性建立基于時間的動畫。Core Animation也可以用來實作視圖之間的過渡。提供了很多内置的過渡方法。

OpenGL ES

   OpenGL ES最重要的工具,是最快的圖形渲染方式,也使它能支援3D模型。

    下圖是有OpenGL ES渲染出的3D圖形

下圖是由OpenGL ES渲染出的2D模型

Audio APIs

   遊戲離不開聲音效果,iPhone開發有對在遊戲中使用聲音有多種選擇。比如更為進階的API:OpenAL,更為簡單的:内置的服務。使用哪種取決于你的遊戲需要。使用Audio API,你可以流音頻,播放短的聲音,甚至是在三維空間模拟音頻定位。

Networking

   iPhone給開發人員提供了很多的連接配接技術。比如實時多人的遊戲可以通過在伺服器和用戶端通過socket和流進行連接配接,或通過GameKit的藍牙配對。

本文轉自麒麟部落格園部落格,原文連結:http://www.cnblogs.com/zhuqil/archive/2011/05/15/2047026.html,如需轉載請自行聯系原作者

繼續閱讀