iPhone游戏开发:使用到的工具和技术

移动开发 iOS 游戏开发
本文从开发过程中使用到的工具和技术的角度,介绍了iPhone游戏开发主要用到这些技术和工具:Objective-C或C/C++, Xcode, UIKit, Quartz 2D, Core Animation, OpenGL, audio APIs, networking, GameKit。

从小到大都有游戏梦,所以希望能开发出自己的游戏。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的蓝牙配对。

【编辑推荐】

  1. 6个月从“菜鸟”到“牛人” iOS游戏开发者成长记
  2. SocialTimes:手机社交游戏开发秘籍
  3. 从零开始 iPhone应用程序开发入门指南
  4. 游戏开发商拟推“本•拉登之死”射击游戏
责任编辑:佚名 来源: 博客园
相关推荐

2011-08-17 13:27:08

iPhone游戏开发objective-c

2021-04-16 23:32:17

区块链工具优秀

2011-07-06 17:48:30

iPhone Xcode 模拟器

2011-07-18 10:53:09

2011-07-18 11:07:12

iPhone 游戏 引擎

2011-07-18 11:23:29

iPhone 游戏 动画

2011-07-18 11:39:58

iPhone 游戏 引擎

2011-07-18 12:29:10

2011-07-06 17:53:40

iPhone SDK Xcode

2019-01-02 15:15:55

游戏开发音乐工具命令

2011-07-27 13:57:36

iPhone 游戏 Cocos2d

2023-11-22 13:10:01

2018-05-10 16:02:48

Android程序赠工具

2012-09-19 10:25:56

iPhone 5游戏开发者

2009-09-15 13:52:47

.NET和C#开发工具

2011-08-12 08:56:31

JavaScript

2011-07-07 17:36:13

iPhone Xcode 窗口

2022-05-13 08:18:51

物联网新兴技术IOT

2023-11-06 12:44:00

物联网传感器

2011-07-25 14:54:53

iPhone iPhone开发 View
点赞
收藏

51CTO技术栈公众号