iOS動(dòng)畫(huà):Core Animation概述
Core Animation

基于合成獨(dú)立圖層的簡(jiǎn)單編程模型,您可以使用 Core Animation 來(lái)建立具有動(dòng)畫(huà)效果的用戶(hù)體驗(yàn)。動(dòng)畫(huà)是按定義好的關(guān)鍵步驟創(chuàng)建的,步驟描述了文字層、圖像層和 OpenGL ES 圖形是如何交互的。Core Animation 在運(yùn)行時(shí)按照預(yù)定義的步驟處理,平穩(wěn)地將視覺(jué)元素從一步移至下一步,并自動(dòng)填充動(dòng)畫(huà)中的過(guò)渡幀。
iOS中的許多功能,例如 Dock,Time Machine 和 QuickTime 播放器,都是依靠 Core Animation 設(shè)計(jì)了它們精美的用戶(hù)界面。使用 Core Animation,您也可以創(chuàng)建出電影一般的用戶(hù)體驗(yàn)—界面元素在屏幕上平滑移動(dòng),具有淡入淡出效果,并且編寫(xiě)幾行代碼就可以添加新的視覺(jué)效果。
Core Image
簡(jiǎn)單地說(shuō),Core Image 就是“圖像讓一切變得簡(jiǎn)單”的驗(yàn)證。它可以讓您輕松地創(chuàng)建能夠自動(dòng)利用現(xiàn)代 GPU 硬件優(yōu)勢(shì)的高性能圖像處理解決方案。Core Image 使用浮點(diǎn)像素處理管道,非常適合處理高比特深度的圖像;它包含了 100 多個(gè)內(nèi)置的過(guò)濾效果,例如色彩效果,扭轉(zhuǎn)和變換。您甚至可以通過(guò)編寫(xiě)自定義的 Image Units 來(lái)擴(kuò)展 Core Image,使其為您提供獨(dú)特的功能。
Quartz Composer
Quartz Composer 是 Xcode 提供的一種可視化編程環(huán)境,能夠讓您快速創(chuàng)建復(fù)雜的活動(dòng)圖形組件,而無(wú)需編寫(xiě)代碼。只需要簡(jiǎn)單地將圖形處理功能的基本組件連接在一起,您就可以快速地設(shè)計(jì)動(dòng)態(tài)的可視化效果,例如,將圖像和實(shí)時(shí)信息與視頻錄像相結(jié)合。完成組件的設(shè)計(jì)之后,您可以使用 Cocoa 綁定將其嵌入您的應(yīng)用程序。Quartz Composer 同樣也是您開(kāi)發(fā) Image Units 和 OpenCL 內(nèi)核的利器。
Quartz
Quartz 主要從兩方面為應(yīng)用程序提供基本的圖形服務(wù):Quartz 2D 圖形 API 和 Quartz Extreme 窗口環(huán)境。Quartz 2D 強(qiáng)勁的圖形處理能力基于可移植文檔格式(PDF),能夠提供專(zhuān)業(yè)水準(zhǔn)的 2D 圖形功能,如貝賽爾曲線,變換和漸變等。作為一塊高級(jí)的“視覺(jué)混合板”,Quartz Extreme 管理應(yīng)用程序在屏幕上的呈現(xiàn),并提供全面支持透明性、反應(yīng)靈敏的 GPU 加速窗口。

OpenGL 是 Mac OS X 中采用硬件加速的圖形的基礎(chǔ),它為 Core Animation,Core Image 和 Quartz Extreme 提供加速功能。同時(shí)它也是創(chuàng)建大部分 3D 應(yīng)用程序—包括游戲,動(dòng)畫(huà)軟件和醫(yī)學(xué)成像產(chǎn)品—所用到的工業(yè)標(biāo)準(zhǔn)圖形 API。Mac OS X 中的 OpenGL 基于一種高效的多線程架構(gòu),支持運(yùn)行時(shí)刻優(yōu)化,資源虛擬化,并支持 ATI,Intel 和 NVIDIA 生產(chǎn)的圖形處理器。

iOS 提供了一系列的圖形圖像技術(shù),這是建立動(dòng)人的視覺(jué)體驗(yàn)的基礎(chǔ)。特定的框架—處理 2D,3D 和動(dòng)畫(huà)效果—能夠讓您的程序訪問(wèn) iPhone 和 iPod touch 卓越的圖形功能。
基于合成獨(dú)立圖層的簡(jiǎn)單編程模型,您可以使用 Core Animation 來(lái)建立具有動(dòng)畫(huà)效果的用戶(hù)體驗(yàn)。動(dòng)畫(huà)是按定義好的關(guān)鍵步驟創(chuàng)建的,步驟描述了文字層、圖像層和 OpenGL ES 圖形是如何交互的。Core Animation 在運(yùn)行時(shí)按照預(yù)定義的步驟處理,平穩(wěn)地將視覺(jué)元素從一步移至下一步,并自動(dòng)填充動(dòng)畫(huà)中的過(guò)渡幀。
如iOS 中許多場(chǎng)景切換一樣,您也可以使用 Core Animation 來(lái)創(chuàng)建引人矚目的效果,如在屏幕上平滑地移動(dòng)用戶(hù)接口元素,加入漸入漸出的效果—所有這些僅需幾行 Core Animation 代碼即可完成。

帶有硬件加速的 OpenGL ES API 可利用 iPhone 和 iPod Touch 的強(qiáng)大的圖形處理能力。OpenGL ES 具有比其桌面版本更加簡(jiǎn)單的 APL,但使用了相同的核心理念,包括可編程著色器和其他能夠使您的 3D 程序或游戲脫穎而出的擴(kuò)展。Quartz 2D
Quartz 2D 是 iOS 下強(qiáng)大的 2D 圖形 API。它提供了專(zhuān)業(yè)的 2D 圖形功能,如貝賽爾曲線,變換和漸變等。使用 Quartz 2D 來(lái)定制接口元素可以為您的程序帶來(lái)個(gè)性化外觀。由于 Quartz 2D 是基于可移植文檔格式 (PDF) 的圖像模型,因此顯示 PDF 文件也是小菜一碟。

QuickTime 和 QTKit 框架為 Mac OS X 上基于時(shí)間的媒體操作提供了強(qiáng)大的服務(wù),它們能為您的應(yīng)用程序添加音頻和視頻的播放,錄制和編碼能力。QuickTime 采用基于標(biāo)準(zhǔn)的 H.264 編解碼器,能夠以極低的數(shù)據(jù)傳輸速率提供令人嘆為觀止的視頻質(zhì)量,不僅如此,它還支持許多其它主要的音頻和視頻文件格式。