文档章节

iOS动画:Core Animation概述

jackyyang
 jackyyang
发布于 2012/07/27 12:27
字数 1303
阅读 511
收藏 5

Core Animation

Core Animation

基于合成独立图层的简单编程模型,您可以使用 Core Animation 来建立具有动画效果的用户体验。动画是按定义好的关键步骤创建的,步骤描述了文字层、图像层和 OpenGL ES 图形是如何交互的。Core Animation 在运行时按照预定义的步骤处理,平稳地将视觉元素从一步移至下一步,并自动填充动画中的过渡帧。

iOS中的许多功能,例如 Dock,Time Machine 和 QuickTime 播放器,都是依靠 Core Animation 设计了它们精美的用户界面。使用 Core Animation,您也可以创建出电影一般的用户体验—界面元素在屏幕上平滑移动,具有淡入淡出效果,并且编写几行代码就可以添加新的视觉效果。

Core Image

简单地说,Core Image 就是“图像让一切变得简单”的验证。它可以让您轻松地创建能够自动利用现代 GPU 硬件优势的高性能图像处理解决方案。Core Image 使用浮点像素处理管道,非常适合处理高比特深度的图像;它包含了 100 多个内置的过滤效果,例如色彩效果,扭转和变换。您甚至可以通过编写自定义的 Image Units 来扩展 Core Image,使其为您提供独特的功能。

Quartz Composer

Quartz Composer 是 Xcode 提供的一种可视化编程环境,能够让您快速创建复杂的活动图形组件,而无需编写代码。只需要简单地将图形处理功能的基本组件连接在一起,您就可以快速地设计动态的可视化效果,例如,将图像和实时信息与视频录像相结合。完成组件的设计之后,您可以使用 Cocoa 绑定将其嵌入您的应用程序。Quartz Composer 同样也是您开发 Image Units 和 OpenCL 内核的利器。

Quartz

Quartz 主要从两方面为应用程序提供基本的图形服务:Quartz 2D 图形 API 和 Quartz Extreme 窗口环境。Quartz 2D 强劲的图形处理能力基于可移植文档格式(PDF),能够提供专业水准的 2D 图形功能,如贝赛尔曲线,变换和渐变等。作为一块高级的“视觉混合板”,Quartz Extreme 管理应用程序在屏幕上的呈现,并提供全面支持透明性、反应灵敏的 GPU 加速窗口。

Open GL OpenGL

OpenGL 是 Mac OS X 中采用硬件加速的图形的基础,它为 Core Animation,Core Image 和 Quartz Extreme 提供加速功能。同时它也是创建大部分 3D 应用程序—包括游戏,动画软件和医学成像产品—所用到的工业标准图形 API。Mac OS X 中的 OpenGL 基于一种高效的多线程架构,支持运行时刻优化,资源虚拟化,并支持 ATI,Intel 和 NVIDIA 生产的图形处理器。

iOS - Graphics & Animation

iOS 提供了一系列的图形图像技术,这是建立动人的视觉体验的基础。特定的框架—处理 2D,3D 和动画效果—能够让您的程序访问 iPhone 和 iPod touch 卓越的图形功能。

Core Animation Core Animation

基于合成独立图层的简单编程模型,您可以使用 Core Animation 来建立具有动画效果的用户体验。动画是按定义好的关键步骤创建的,步骤描述了文字层、图像层和 OpenGL ES 图形是如何交互的。Core Animation 在运行时按照预定义的步骤处理,平稳地将视觉元素从一步移至下一步,并自动填充动画中的过渡帧。

如iOS 中许多场景切换一样,您也可以使用 Core Animation 来创建引人瞩目的效果,如在屏幕上平滑地移动用户接口元素,加入渐入渐出的效果—所有这些仅需几行 Core Animation 代码即可完成。

Open GL ES OpenGL ES

带有硬件加速的 OpenGL ES API 可利用 iPhone 和 iPod Touch 的强大的图形处理能力。OpenGL ES 具有比其桌面版本更加简单的 APL,但使用了相同的核心理念,包括可编程着色器和其他能够使您的 3D 程序或游戏脱颖而出的扩展。Quartz 2D

Quartz 2D 是 iOS 下强大的 2D 图形 API。它提供了专业的 2D 图形功能,如贝赛尔曲线,变换和渐变等。使用 Quartz 2D 来定制接口元素可以为您的程序带来个性化外观。由于 Quartz 2D 是基于可移植文档格式 (PDF) 的图像模型,因此显示 PDF 文件也是小菜一碟。

Quicktime for Multimedia QuickTime

QuickTime 和 QTKit 框架为 Mac OS X 上基于时间的媒体操作提供了强大的服务,它们能为您的应用程序添加音频和视频的播放,录制和编码能力。QuickTime 采用基于标准的 H.264 编解码器,能够以极低的数据传输速率提供令人叹为观止的视频质量,不仅如此,它还支持许多其它主要的音频和视频文件格式。

© 著作权归作者所有

共有 人打赏支持
jackyyang
粉丝 22
博文 42
码字总数 18506
作品 0
珠海
私信 提问
GPU vs CPU in iOS

一直以来,我们做产品的时候并没有特别的去考虑CPU/GPU的使用,最近为了提升可视化功能的性能,发现合理使用GPU也是一个可以好好研究的部分,这里总结一下一些有用的信息。 中央处理器 CPU ...

雨_树
2018/07/10
0
0
ios中应用Lottie解决动画问题

作为一名iOS工程师,深知复杂动画的痛苦,下面我们来介绍下Lottie来解决日常的动画难题。 Lottie的简单介绍: 使用Lottie开发的流程是: 设计师在AE中设计完成你的动画,通过bodymoving插件导...

威廉云霄
02/20
0
0
iphone开发资源汇总

iphone开发资源汇总 如何用Facebook graphic api上传视频: http://developers.facebook.com/blog/post/532/ Keychain保存数据封装: https://github.com/carlbrown/PDKeychainBindingsContr......

长平狐
2012/10/25
232
0
iphone开发资源汇总

学习过程当中查找到的资料,做一个记录,以便更多朋友查看。 开发的过程有时候是简单的,因为我们可以站在巨人的肩上,跳得更高,走得更远。 如何用Facebook graphic api上传视频: http://d...

长平狐
2012/08/13
466
0
Core Animation基础介绍、简单使用CALayer以及多种动画效果

Core Animation之基础介绍 Core Animation可以翻译为核心动画,它为图形渲染和动画提供了基础。使用核心动画,你只需要设置一些参数比如起点和终点,剩下的帧核心动画为你自动完成。核心动画...

season_life
2013/05/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

kettle demo9 在Java代碼中读取文件内容插入到数据库

kettle调用java代码一步步扩展,本次在Java代码里读取本地文件,然后把数据插入到数据库 本地文件内容,book.txt 完整流程图 1、生成记录,设置1条 2、java代码,主要两部分,第一,方法上面...

wells杨
35分钟前
3
0
使用split_size优化的ODPS SQL的场景

首先有两个大背景需要说明如下: 说明1:split_size,设定一个map的最大数据输入量,单位M,默认256M。用户可以通过控制这个变量,从而达到对map端输入的控制。设置语句:set odps.sql.mapp...

阿里云官方博客
37分钟前
3
0
让线程按顺序执行8种方法

实现 我们下面需要完成这样一个应用场景: 1.早上;2.测试人员、产品经理、开发人员陆续的来公司上班;3.产品经理规划新需求;4.开发人员开发新需求功能;5.测试人员测试新功能。 规划需求,...

编程SHA
41分钟前
2
0
云服务无法绑定公网IP问题解决方案

问题描述:在云服务器上跑的代码启动服务监听公网IP的时候可能报如下异常 bind: cannot assign requested addressbind: cannot assign requested address ..... 查看配置文件写的确实是ssh连...

MrPei
43分钟前
4
0
java中的this::

::是java8 中新引入的运算符 Class::function的时候function是属于Class的,应该是静态方法。 this::function的funtion是属于这个对象的。 注意: 调用方法可以名称不一样,但是需要参数一样...

Java搬砖工程师
47分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部