我正在玩CAEmitterCell,但大多數效果都非常快,就像煙花一樣。 但我想有一個像你在這裏看到的緩慢的「星星」效果www.findyourwaytooz.comCAEmitterCell - 緩慢的星星或燈光效果
我該怎麼用CAEmitterCell做到這一點?
謝謝:)
我正在玩CAEmitterCell,但大多數效果都非常快,就像煙花一樣。 但我想有一個像你在這裏看到的緩慢的「星星」效果www.findyourwaytooz.comCAEmitterCell - 緩慢的星星或燈光效果
我該怎麼用CAEmitterCell做到這一點?
謝謝:)
我有一個使用以下設置爲發射一個項目,它非常精確地模仿什麼,我認爲你的意思是:
//set ref to the layer
starsEmitter = (CAEmitterLayer*)self.layer; //2
//configure the emitter layer
starsEmitter.emitterPosition = CGPointMake(160, 240);
starsEmitter.emitterSize = CGSizeMake(self.superview.bounds.size.width,self.superview.bounds.size.height);
NSLog(@"width = %f, height = %f", starsEmitter.emitterSize.width, starsEmitter.emitterSize.height);
starsEmitter.renderMode = kCAEmitterLayerPoints;
starsEmitter.emitterShape = kCAEmitterLayerRectangle;
starsEmitter.emitterMode = kCAEmitterLayerUnordered;
CAEmitterCell* stars = [CAEmitterCell emitterCell];
stars.birthRate = 0;
stars.lifetime = 10;
stars.lifetimeRange = 0.5;
stars.color = [[UIColor colorWithRed:255 green:255 blue:255 alpha:0] CGColor];
stars.contents = (id)[[UIImage imageNamed:@"particle.png"] CGImage];
stars.velocityRange = 500;
stars.emissionRange = 360;
stars.scale = 0.2;
stars.scaleRange = 0.1;
stars.alphaRange = 0.3;
stars.alphaSpeed = 0.5;
[stars setName:@"stars"];
//add the cell to the layer and we're done
starsEmitter.emitterCells = [NSArray arrayWithObject:stars];
我上傳的樣本項目的GitHub :SimpleCAEmitterLayer
不錯的演示。 「particle.png」不復制到包(即丟失) - 用新圖形取代它工作正常 – 2013-02-12 23:59:14
感謝skinnyTOD,我會確保它同步:) – jhilgert00 2013-02-13 00:01:42
非常感謝 - 現在它更容易對我來說玩弄:)你讓我的一天 – cuSoon2013 2013-02-13 09:12:18
我以前實際上已經這樣做過。給我一些時間,我可以在GitHub上發帖,除非你有特定的速度問題等等。 – jhilgert00 2013-02-12 18:22:38