background image

还在继续维护的应用来说会是一个机会。相信谁先能适应新的 UI,谁就将在 iOS7 上占到
先机。
 
动态 UIKit
新增了 UIDynamicItem 委托,用来为 UIView 制定动态行为,当然其他任何对象都能通过
实现这组接口来定义动态行为,只不过在 UIKit 中可能应用最多。所谓动态行为,是指将
现实世界的行为或者特性引入到 UI 中,比如重力等。通过实现 UIDynamicItem,UIKit 现

 

在支持如下行为: * UIAttachmentBehavior 连接两个实现了 UIDynamicItem 的物体(以下

 

简称动态物体),一个物体移动时,另一个跟随移动 * UICollisionBehavior 指定边界,使

 

两个动态物体可以进行碰撞 * UIGravityBehavior 

 

顾名思义,为动态物体增加重力模拟 * 

UIPushBehavior 

 

为动态物体施加持续的力 * UISnapBehavior 为动态物体指定一个附着点,

想象一下类似挂一幅画在图钉上的感觉。
如果有开发游戏的童鞋可能会觉得这些很多都是做游戏时候的需求,一种 box2d 之类的
2D 物理引擎的既视感跃然而出。没错的亲,动态 UI,加上之后要介绍的 Sprite Kit,极大
的扩展了使用 UIKit 进行游戏开发的可能性。另外要注意 UIDynamicItem 不仅适用于
UIKit,任何对象都可以实现接口来获得动态物体的一些特性,所以说用来做一些 3D 的
事情也不是没有可能。如果觉得 Cocos2D+box2d 这样的组合使用起来不方便的话,现在动
态 UIKit+SpriteKit 给出了新的选择。
 
游戏方面
iOS7 SDK 极大加强了直接使用 iOS SDK 制作和分发游戏的体验,最主要的是引入了专门
的游戏制作框架。
 
Sprite Kit Framework
这是个人认为 iOS7 SDK 最大的亮点,也是最重要的部分,iOS SDK 终于有自己的精灵系
统了。Sprite Kit Framework 使用硬件加速的动画系统来表现 2D 和 2.5D 的游戏,它提供了
制作游戏所需要的大部分的工具,包括图像渲染,动画系统,声音播放以及图像模拟的
物理引擎。可以说这个框架是 iOS SDK 自带了一个较完备的 2D 游戏引擎,力图让开发者
专注于更高层的实现和内容。和大多数游戏引擎一样,Sprite Kit 内的内容都按照场景
(Scene)来分开组织,一个场景可以包括贴图对象,视频,形状,粒子效果甚至是
CoreImage 滤镜等等。相对于现有的 2D 引擎来说,由于 Sprite Kit 是在系统层级进行的优
化,渲染时间等都由框架决定,因此应该会有比较高的效率。
另外,Xcode 还提供了创建粒子系统和贴图 Atlas 的工具。使用 Xcode 来管理粒子效果和
贴图 atlas,可以迅速在 Sprite Kit 中反应出来。
 
Game Controller Framework
为 Made-for-iPhone/iPod/iPad (MFi) game controller 设计的硬件的对应的框架,可以让用户
用来连接和控制专门的游戏硬件。参考 WWDC 2013 开场视频中开始的赛车演示。现在想

到的是,也许这货不仅可以用于游戏 或者苹果之后会扩展其应用,因为使用普及率很
高的 iPhone 作为物联网的入口,似乎会是很有前途的事情。
GameCenter 改进
GameCenter

一直是苹果的败笔 虽然每年都在改进,但是一直没看到大的起色。今年也不

例外,都是些小改动,不提也罢。