问题标签 [caemittercell]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1363 浏览

ios - CAEmitterLayer:使用带有 CAEmitterCell 的 @2x (retina) png 图像

使用 CAEmitterLayer,@2x (retina) 图像不会像在 iOS 其他地方那样被缩放属性。我得到的结果是@2x 版本显示为非视网膜图像大小的 4 倍,而不是按比例缩小。

知道如何解决这个问题吗?我已经尝试在 UIImageView 中测试图像疼痛,结果应该是这样,所以这似乎是 CAEmitterLayer 和 CAEmitterCell 的问题。图像具有正确的 @2x.png 说明符。

这是我正在使用的代码:

谢谢!

更新:

@Fabian,设置 contentScale 不起作用,至少不是我的解决方案

我也试过这个没有结果..

并且设置比例范围不起作用。iPad 2 和 iPad 3 (w RD) 的尺寸仍然存在差异。

0 投票
1 回答
2693 浏览

ios - CAEmitterCell - 慢星或光效

我在玩 CAEmitterCell,但大多数效果都是非常快的效果,比如烟花。但我想要像你在www.findyourwaytooz.com上看到的那样缓慢的“星星”效果

我怎么能用 CAEmitterCell 做到这一点?

谢谢 :)

0 投票
0 回答
384 浏览

objective-c - CAEmitterCell 粒子位置

我有一个使用 uiview 粒子发射器的降雪动画。由于大量的研究,我能够以各种方式为雪设置动画,包括更改粒子的图像内容。有一个圆形区域,我想在其中更改粒子的雪图像,然后在粒子离开该区域时将图像改回来。(灯光下的雪花)

我正在考虑编写一个公式来根据粒子在动画循环中的位置切换内容图像,但我无法获得粒子的 x、y。是否有可能获得单个粒子的位置?

或者也许是粒子碰撞检测?

0 投票
3 回答
2635 浏览

iphone - 动画 CAEmitterCell Color 属性

我有一个CAEmitterCell,我已经设置了一个特定的颜色。文档说这个属性是可动画的,我想为我游戏中的不同玩家(所有玩家一开始都选择他们的颜色)在多种不同颜色之间制作动画。

这是我的EmitterCell设置:

这里是我在这种情况下测试颜色变化的地方,只是在两种不同颜色之间跳跃:

但是,当我运行它时,颜色永远不会改变。我在这里误解了“ Animatable ”的性质,还是我只需要以不同的方式处理它CAEmitterCell

0 投票
1 回答
1059 浏览

iphone - CAEmitterCell 不尊重持续时间值

我有一个发射器,我想在 2 秒后结束,但我无法让它停止运行!

我的代码如下:

尽管已经成为 iOS 的一部分大约 2 年,但似乎很少有关于此的信息!

0 投票
2 回答
1591 浏览

ios - CAEmitterLayer 未显示

我只是添加一个UIView到 mystoryboard view controller然后创建一个UIView类来显示粒子效果。我将UIView's类名更改为我创建的自定义类的名称。我在课堂上使用的代码UIView没有显示我期望的粒子效果。代码如下:

0 投票
1 回答
605 浏览

ios - CAEmitterCell 访问所有粒子

我有一个 CAEmitterCell 工作,但我希望粒子减速并停止。似乎如果我可以访问所有粒子,那么我可以将它们的速度和/或加速度降低到 0,它们就会停止移动。

我试过这样的事情:

但这不起作用,因为我的 layerEmitter 只有一个emitterCell,我不需要emitterCell,而是它已经创建的粒子。

我在文档中没有看到这一点,这让我相信我有一个概念问题。我很感激任何帮助。

0 投票
2 回答
2036 浏览

ios - CAEmitterCell 不尊重birthRate 的变化

我想创建一个仅在用户触摸屏幕时发射的粒子效果,但是一旦将 CAEmitterCellbirthRate 属性设置为非零值,我就无法更改它。

我有一个 UIView 的子类,它按照我想要的方式设置我的 CAEmitterLayer 和我的 CAEmitterCell。我在该类上定义了两个属性:

然后,在我的视图控制器中,我正在跟踪触摸,设置emitterLayer 的位置和emitterCell 出生率:

日志报告emitterView.emitterCell.birthRate 发生变化:

当我触摸屏幕时,发射器按预期启动,层跟随触摸,但是当我结束触摸时,发射器单元愉快地发射初始设置的任何值(在 touchesBegan 中设置的值)。无论我做什么,一旦将出生率值设置为非零值,我似乎都无法更改。日志报告值设置正确,但发射器继续发射。

但是,如果我更改 touchesEnded 方法来更改图层的位置,在我在emitterCell 上设置birthRate 之后,一切都会按预期工作:

有人可以解释为什么吗?

0 投票
2 回答
1272 浏览

ios - CAEmitter 平滑启动动画

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

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

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

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

感谢您的帮助。

0 投票
1 回答
386 浏览

ios - iOS:iOS 6 上的 CAEmitter 层和 EmitterCell 翻转图像

正在玩CAEmitterLayer,发现了一些非常奇怪的东西。

CAEmitterLayer在左下角设置了 45 度角(指向右上角),并尝试向右上角射箭。

一切正常,除了我通过content单元格属性设置的图像。

这是 iOS 7 设备上的原始图像:

在此处输入图像描述

在 iOS 6 上运行时,它变成了这样:

在此处输入图像描述

有没有人经历过这种情况,你知道为什么会这样吗?拥有两组图像并检查设备是 iOS 6 还是 iOS 7 并相应地设置图像对我来说不是问题,但我的好奇心促使我找出为什么会这样。提前致谢。

我正在使用 Xcode 5。