CAEmitter 有什么方法可以插入自动画粒子?
CAEmitter any way to insert self-animated particles?
我有一个 CAEmitterCell
:
CAEmitterCell * spriteCell = [CAEmitterCell emitterCell];
spriteCell.contents = (id) [[UIImage imageNamed:@"emitterSprite.png"] CGImage];
我希望 sprite 是动画 png 序列(或左右)而不是单个图像。
我知道的唯一技术是使用 UIImageView
:
NSMutableArray *animatedImagesArray = [NSMutableArray new];
imageView = [[UIImageView alloc] initWithFrame:CGRectMake(...)];
for (int i = 1; i <= 10; i++)
{[animatedImagesArray addObject:[UIImage imageNamed:[NSString stringWithFormat:@"sequenceNo-%d%@", i, @".png"]]];}
imageView.animationImages = animatedImagesArray;
[view addSubview:imageView];
CAEmitterCell.contents
似乎不接受 UIImageView
。有没有办法做到这一点?
由于操作系统的性能原因,您尝试执行的操作是不可能的。如果你有简单的转换,如旋转、缩放、色调,你可以在你的 CAEmitterCell 的属性中编辑这些值。如果您需要更复杂的动画,您将需要使用可以处理 UIImageView 的自定义发射器。但请注意性能影响。
我有一个 CAEmitterCell
:
CAEmitterCell * spriteCell = [CAEmitterCell emitterCell];
spriteCell.contents = (id) [[UIImage imageNamed:@"emitterSprite.png"] CGImage];
我希望 sprite 是动画 png 序列(或左右)而不是单个图像。
我知道的唯一技术是使用 UIImageView
:
NSMutableArray *animatedImagesArray = [NSMutableArray new];
imageView = [[UIImageView alloc] initWithFrame:CGRectMake(...)];
for (int i = 1; i <= 10; i++)
{[animatedImagesArray addObject:[UIImage imageNamed:[NSString stringWithFormat:@"sequenceNo-%d%@", i, @".png"]]];}
imageView.animationImages = animatedImagesArray;
[view addSubview:imageView];
CAEmitterCell.contents
似乎不接受 UIImageView
。有没有办法做到这一点?
由于操作系统的性能原因,您尝试执行的操作是不可能的。如果你有简单的转换,如旋转、缩放、色调,你可以在你的 CAEmitterCell 的属性中编辑这些值。如果您需要更复杂的动画,您将需要使用可以处理 UIImageView 的自定义发射器。但请注意性能影响。