简介:CAEmitterLayer提供了一个基于Core Animation的粒子发射系统,粒子用CAEmitterCell来初始化。 粒子画在背景层盒边界上。但是CAEmitterLayer只支持IOS5及以上版本。
Properties:
birthRate:粒子产生系数,默认1.0;
emitterCells: 装着CAEmitterCell对象的数组,被用于把粒子投放到layer上;
emitterDepth:决定粒子形状的深度联系:emitter shape
emitterMode:发射模式
NSString * const kCAEmitterLayerPoints;
NSString * const kCAEmitterLayerOutline;
NSString * const kCAEmitterLayerSurface;
NSString * const kCAEmitterLayerVolume;
emitterPosition:发射位置
emitterShape:发射源的形状:
NSString * const kCAEmitterLayerPoint;
NSString * const kCAEmitterLayerLine;
NSString * const kCAEmitterLayerRectangle;
NSString * const kCAEmitterLayerCuboid;
NSString * const kCAEmitterLayerCircle;
NSString * const kCAEmitterLayerSphere;
emitterSize:发射源的尺寸大;
emitterZposition:发射源的z坐标位置;
lifetime:粒子生命周期
preservesDepth:不是多很清楚(粒子是平展在层上)
renderMode:渲染模式:
NSString * const kCAEmitterLayerUnordered;
NSString * const kCAEmitterLayerOldestFirst;
NSString * const kCAEmitterLayerOldestLast;
NSString * const kCAEmitterLayerBackToFront;
NSString * const kCAEmitterLayerAdditive;
scale:粒子的缩放比例:
seed:用于初始化随机数产生的种子
spin:自旋转速度
velocity:粒子速度
CAEmitterCell
CAEmitterCell类代从从CAEmitterLayer射出的粒子;emitter cell定义了粒子发射的方向。
alphaRange: 一个粒子的颜色alpha能改变的范围;
alphaSpeed:粒子透明度在生命周期内的改变速度;
birthrate:粒子参数的速度乘数因子;
blueRange:一个粒子的颜色blue 能改变的范围;
blueSpeed: 粒子blue在生命周期内的改变速度;
color:粒子的颜色
contents:是个CGImageRef的对象,既粒子要展现的图片;
contentsRect:应该画在contents里的子rectangle:
emissionLatitude:发射的z轴方向的角度
emissionLongitude:x-y平面的发射方向
emissionRange;周围发射角度
emitterCells:粒子发射的粒子
enabled:粒子是否被渲染
greenrange: 一个粒子的颜色green 能改变的范围;
greenSpeed: 粒子green在生命周期内的改变速度;
lifetime:生命周期
lifetimeRange:生命周期范围
magnificationFilter:不是很清楚好像增加自己的大小
minificatonFilter:减小自己的大小
minificationFilterBias:减小大小的因子
name:粒子的名字
redRange:一个粒子的颜色red 能改变的范围;
redSpeed; 粒子red在生命周期内的改变速度;
scale:缩放比例:
scaleRange:缩放比例范围;
scaleSpeed:缩放比例速度:
spin:子旋转角度
spinrange:子旋转角度范围
style:不是很清楚:
velocity:速度
velocityRange:速度范围
xAcceleration:粒子x方向的加速度分量
yAcceleration:粒子y方向的加速度分量
zAcceleration:粒子z方向的加速度分量
Class Methods
defauleValueForKey: 更具健获得值;
emitterCell:初始化方法
shouldArchiveValueForKey:是否归档莫键值
分享到:
相关推荐
CAEmitterLayer 显示粒子发射动画,具体的粒子由 CAEmitterCell 封装。代码示例是展示 CAEmitterLayer 如何使用。为了方便,直接在控制器(UIViewController)中设置 CAEmitterLayer。如果在项目中使用,有时在自定义...
- `emitterCells`属性:定义了粒子发射源,每个cell代表一个独立的粒子发射器,可以设置不同的粒子属性,如大小、颜色、速度等。 2. **发射位置(Emitter Position)** - `emitterPosition`属性:决定了粒子发射...
开发者通常会先创建一个CAEmitterCell实例,然后配置其属性以匹配所需的效果,接着将这个发射源添加到CAEmitterLayer中。为了实现动态变化,可能还需要使用CADisplayLink或NSTimer来定时更新发射源的属性,比如改变...
`CAEmitterLayer`提供了丰富的属性,如`emitterShape`用于设置粒子发射的形状(点、线、矩形等),`emitterMode`决定粒子是相对于自身还是相对于其父层发射,`emitterPosition`和`emitterSize`则控制粒子的发射位置...
粒子系统由两个核心组件组成:发射器(CAEmitterLayer)和粒子(CAEmitterCell)。发射器定义了粒子的产生位置、方向、速度等属性,而粒子单元则包含了粒子自身的形状、颜色、透明度等视觉特性。 CAEmitterLayer的`...
粒子发射器是Core Animation框架的一部分,是iOS中用于创建动态视觉效果的重要组件。它允许开发者创建各种复杂的粒子效果,如火花、烟雾、雨滴、飘落的花瓣等。在QQ空间飘落花瓣的场景中,粒子发射器可以模拟花瓣从...
CAEmitterLayer是Core Animation的一部分,它是一个2D粒子发射器,可以创建出丰富的视觉效果。这个layer本身并不直接绘制,而是通过配置发射器属性和粒子属性来控制粒子的行为。在"CAEmitterLayerDemo"中,我们可以...
3. **控制粒子发射**:通过调整 `CAEmitterLayer` 的属性,控制粒子的发射频率、位置、方向等。 4. **集成到UIView**:确保 `CAEmitterLayer` 成为 `DWFParticleView` 的图层。 #### 六、示例代码 以下是一个简单的...
- 在.m文件中定义一个`CAEmitterLayer`类型的属性`emitterLayer`,用于存储粒子发射器实例。 ```objc @property (nonatomic, weak) CAEmitterLayer *emitterLayer; ``` - 在`initWithFrame:`方法中初始化粒子发射...
粒子发射动画通常基于粒子系统(Particle System),这是一种图形学中的特效生成工具,能够模拟各种自然现象,如火焰、烟雾、雨滴、雪花等。 粒子系统由大量微小的个体——粒子组成,每个粒子都有自己的属性,如...
这个Demo的源代码包含了实现上述效果的具体实现,包括粒子发射器的配置、粒子属性的设置等。通过查看和分析这些代码,开发者可以了解到如何将理论知识转化为实际的粒子效果,并能根据需求自定义粒子系统。 7. **...
在iOS平台上,我们可以利用Core Animation框架中的CAEmitterLayer来实现粒子发射器。CAEmitterLayer是一个图层类,它可以生成和管理一系列粒子,这些粒子可以按照预设的规则运动,从而形成各种动态效果。 ...
- `emitterPosition`: 设置粒子发射的位置。 - `emitterSize`: 控制粒子的生成区域。 - `emitterShape`: 决定粒子从哪个形状的边界发射,如`kCAEmitterLayerCircle`、`kCAEmitterLayerLine`等。 - `birthRate`: 粒子...
CAEmitterLayer是一个基于图层的粒子发射器,它可以生成大量自定义的粒子,并通过设置不同的属性来控制粒子的行为、生命期、速度、颜色等。 **粒子系统的关键属性**: 1. **emitterPosition**: 控制粒子发射的位置...
在代码实现中,通常会将CAEmitterLayer添加到视图的layer属性中,然后通过修改发射器和粒子细胞的属性实时更新粒子效果。如果需要更复杂的交互,比如触控响应或时间依赖的动画,可以使用CADisplayLink或定时器来同步...
在iOS开发中,粒子效果是一...总之,iOS中的粒子效果是通过`CAEmitterLayer`和UIKit Dynamics来创建的,Dazzle资源可以提供现成的粒子效果。理解并掌握这些工具和技术,可以让你在iOS应用中创造出引人入胜的视觉特效。
iOS开发-iOS粒子发射器开发-iOS粒子动画下雨下雪天气动画开发-CAEmitterLayer粒子发射器-CAEmitterCell粒子开发实践-附件资源