简单的例子效果

lizi.png
   // 创建发射器
        let emitterLayer = CAEmitterLayer()
        
        // 设置位置
        emitterLayer.emitterPosition = CGPoint(x: view.bounds.width * 0.5, y: view.bounds.height - 20)
        
        // 开启三维效果
        emitterLayer.preservesDepth = true
        
        // 设置Cell : 对应一个粒子
        // 创建粒子
        let cell = CAEmitterCell()
        
        //设置每秒发出多少个粒子
        cell.birthRate = 20
        
        //设置粒子存活时间
        cell.lifetime = 5
        cell.lifetimeRange = 1.5
        
        //设置缩放比例
        cell.scale = 0.7
        cell.scaleRange = 0.2
        
        //设置粒子的方向
        cell.emissionLongitude = CGFloat(-Double.pi/2)
        cell.emissionRange = CGFloat(-Double.pi/12)
        
        //设置粒子的速度
        cell.velocity = 150
        cell.velocityRange = 100
        //旋转方向
        cell.spin = CGFloat(-Double.pi/2)
        
        //设置粒子的内容
        cell.contents = UIImage(named: "good2_30x30_")?.cgImage
        
        //将粒子设置到发射器中
        emitterLayer.emitterCells = [cell]
        
        //将layer添加到父layer中
        view.layer.addSublayer(emitterLayer)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容