swift 实现粒子运动效果

粒子运动的实现:

  1. 创建发射器 CAEmitterLayer
  2. 创建粒子 CAEmitterCell

实现如下:

    // 创建发射器
    let emitter = CAEmitterLayer()

    // 设置发射器位置
    emitter.emitterPosition = point

    // 开启三维效果
    emitter.preservesDepth = true

    // 创建粒子,并设置粒子相关属性
    var cells = [CAEmitterCell]()
    for i in 0..<10 {
        let cell = CAEmitterCell()

        // 设置粒子速度
        cell.velocity = 150
        cell.velocityRange = 100
        
        // 设置粒子大小
        cell.scale = 0.7
        cell.scaleRange = 0.3
        
        // 设置粒子方向
        cell.emissionLatitude = CGFloat(-M_PI_2)
        cell.emissionRange = CGFloat(M_PI_2 / 6)
        
        // 设置粒子旋转
        cell.spin = CGFloat(M_PI_2)
        cell.spinRange = CGFloat(M_PI_2 / 2)
        
        // 设置粒子每秒弹出的个数
        cell.birthRate = 2
        
        // 设置粒子生命存活时间
        cell.lifetime = 7
        cell.lifetimeRange = 1.5
        
        // 设置内容图片
        cell.contents = UIImage(named: "good\(i)_30x30")?.cgImage
        
        cells.append(cell)
    }
    
    // 将粒子设置到发射器中
    emitter.emitterCells = cells
    
    // 将发射器的layer添加到父类的layer中
    view.layer.addSublayer(emitter)

欢迎指正!

毛姆说的,阅读能为自己筑起一个避难所,几乎可以避开生命中所有的灾难。

欢迎关注我的微信公众号:LDYG2017, 或扫描下方二维码关注. 这里会分享我的读书笔记, 愿你我共同进步.

swift 实现粒子运动效果_第1张图片
初始化蒲公英.jpg

你可能感兴趣的:(swift 实现粒子运动效果)