gpt4 book ai didi

ios - CAEmitter 平滑启动动画

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:51:09 24 4
gpt4 key购买 nike

我正在尝试让 CAEmitterLayer 制作一种光剑动画。我想要一束光从一个点出现然后停下来。我的问题是我无法让动画的开始顺利进行。我一运行代码,就好像已经过了几秒钟,没有任何动画。

我尽可能地精简了代码,看看是否能找到问题的根源,但即使是最简单的代码,它仍然会发生。这是我现在拥有的仍然存在问题的代码示例:

CAEmitterLayer *emitterLayer = [CAEmitterLayer layer];
emitterLayer.emitterPosition = CGPointMake(10, 10);

CAEmitterCell *emitterCell = [CAEmitterCell emitterCell];
emitterCell.contents = (id)[[UIImage imageNamed:@"LightParticle"] CGImage];

emitterCell.birthRate = 100;
emitterCell.lifetime = 10;
emitterCell.velocity = 10;

emitterLayer.emitterCells = @[emitterCell];
[self.view.layer addSublayer:emitterLayer];

我猜我一定是错过了一些明显的东西,但我已经好几天没能解决这个问题了。

将 birthRate 设置为 0 将导致光束平滑消失,但将其设置回任何数字将导致它再次出现而没有动画。

感谢您的帮助。

最佳答案

终于在这里找到了答案: iOS 7 CAEmitterLayer spawning particles inappropriately

这就是我所缺少的:

emitter.beginTime = CACurrentMediaTime();

关于ios - CAEmitter 平滑启动动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19329215/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com