首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法让CAEmitterLayer显示粒子

无法让CAEmitterLayer显示粒子
EN

Stack Overflow用户
提问于 2015-09-07 01:40:34
回答 1查看 447关注 0票数 0

我读过一些教程,并查看了文档,但我无法让我的CAEmitterLayer显示任何粒子。我有一个CAEmitterLayer和CAEmitterCell属性,这两个属性都具有非原子属性和存储属性。也许我错过了一个步骤,但是我已经导入了QuartzCore,下面是我在viewDidLoad中调用的设置层和单元格的方法:

代码语言:javascript
复制
-(void) setupEmitter{

 self.emitterLayer = [CAEmitterLayer layer];
 self.emitterLayer.bounds = CGRectMake(0, 0, 200,200);
 self.emitterLayer.position = CGPointMake(100,100);
 self.emitterLayer.backgroundColor = [[UIColor clearColor] CGColor];
 self.emitterLayer.emitterPosition = CGPointMake(100, 100);
 self.emitterLayer.emitterSize = CGSizeMake(100, 100);
 [self.view.layer addSublayer:self.emitterLayer];
}


-(void) setupEmitterCell {

 self.emitterCell = [CAEmitterCell emitterCell];
 self.emitterCell.name = @"goldstar";
 self.emitterCell.contents = (id)[UIImage imageNamed:@"bokeh.png"].CGImage;
 self.emitterCell.birthRate = 66;
 self.emitterCell.lifetime = 0.5;;
 self.emitterCell.lifetimeRange = 0.6;
 self.emitterCell.velocity = 300;
 self.emitterCell.emissionRange = 2 * M_PI;
 self.emitterCell.spin = 0.0;
 self.emitterCell.spinRange = 4 * M_PI;
 self.emitterCell.color = [[UIColor colorWithRed:0.6 green:0.6 blue:0.6 alpha:1.0] CGColor];
 self.emitterCell.scale = 1.0;
 self.emitterCell.scaleRange = 1.0;
 self.emitterCell.emitterCells = [NSArray arrayWithObjects:self.emitterCell, nil];
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-07 02:34:29

我可能错了,但问题似乎是,你忘了告诉发射器它应该用什么细胞?也许使用[self.emitterLayer setEmitterCells:self.emitterCell];可能会有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32430060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档