粒子引擎使用 ——

粒子發(fā)射器

// 粒子發(fā)射器圖層
// 每一個(gè)發(fā)射器都會(huì)有很多的粒子, 粒子定義了怎樣將粒子發(fā)射和呈現(xiàn)到器層。
// 粒子是受 layer 的生命影響的,在 layer begin time 后開始仿真顯示效果。
// 上面的粒子被繪制到 backgroundColor 和 邊框上
public class CAEmitterLayer : CALayer {
    
    public var emitterCells: [CAEmitterCell]?    // 粒子容器
    public var birthRate: Float                       // 出生率(粒子的出生率乘以這個(gè)出生率就是每秒產(chǎn)生粒子的個(gè)數(shù))
    public var lifetime: Float                      // 生命周期
    public var emitterPosition: CGPoint        // 發(fā)射點(diǎn)
    public var emitterZPosition: CGFloat     // 縱深
    public var emitterSize: CGSize            // 發(fā)射的尺寸(由于emitterShape 值的不同,這個(gè)值可能會(huì)被忽略)
    public var emitterDepth: CGFloat      // 發(fā)射器深度
    public var emitterShape: String          // 發(fā)射形狀
    public var emitterMode: String          // 發(fā)射模式
    public var renderMode: String          // 渲染模式
    public var preservesDepth: Bool
    public var velocity: Float            // 產(chǎn)生粒子的速度
    public var scale: Float                // 繁殖粒子規(guī)模
    public var spin: Float                // 自旋
    public var seed: UInt32            // 種子
}


/** `emitterShape' values. 發(fā)射形狀的值 **/
public let kCAEmitterLayerPoint: String            // 點(diǎn)
public let kCAEmitterLayerLine: String             // 線
public let kCAEmitterLayerRectangle: String        // 矩形
public let kCAEmitterLayerCuboid: String           // 長(zhǎng)方體
public let kCAEmitterLayerCircle: String           // 圓
public let kCAEmitterLayerSphere: String           // 球


/** `emitterMode' values.  發(fā)射模式值 **/
public let kCAEmitterLayerPoints: String        // 點(diǎn)點(diǎn)
public let kCAEmitterLayerOutline: String       // 一行
public let kCAEmitterLayerSurface: String       // 表面
public let kCAEmitterLayerVolume: String        // 體積


/** `renderMode' values.  渲染模式 **/
public let kCAEmitterLayerUnordered: String    // 無序
public let kCAEmitterLayerOldestFirst: String   // 古老的第一
public let kCAEmitterLayerOldestLast: String    // 舊的最后
public let kCAEmitterLayerBackToFront: String  // 回到前面
public let kCAEmitterLayerAdditive: String        // 添加劑

粒子

public class CAEmitterCell : NSObject, NSCoding, CAMediaTiming {
    public class func defaultValue(forKey key: String) -> AnyObject?
    public func shouldArchiveValue(forKey key: String) -> Bool
    public var name: String?              // 粒子名稱
    public var isEnabled: Bool            // 控制是否在發(fā)射器中呈現(xiàn)
    public var birthRate: Float            // 每秒鐘發(fā)出創(chuàng)建的對(duì)象的數(shù)量
    public var lifetime: Float              // 粒子的生命周期
    public var lifetimeRange: Float
    public var emissionLatitude: CGFloat        // 發(fā)射的緯度
    public var emissionLongitude: CGFloat      // 發(fā)射的經(jīng)度
    public var emissionRange: CGFloat            // 發(fā)射的范圍
    public var velocity: CGFloat
    public var velocityRange: CGFloat
    public var xAcceleration: CGFloat
    public var yAcceleration: CGFloat
    public var zAcceleration: CGFloat
    public var scale: CGFloat
    public var scaleRange: CGFloat
    public var scaleSpeed: CGFloat
    public var spin: CGFloat
    public var spinRange: CGFloat
    public var color: CGColor?
    public var redRange: Float
    public var greenRange: Float
    public var blueRange: Float
    public var alphaRange: Float
    public var redSpeed: Float
    public var greenSpeed: Float
    public var blueSpeed: Float
    public var alphaSpeed: Float
    public var contents: AnyObject?
    public var contentsRect: CGRect
    public var contentsScale: CGFloat
    public var minificationFilter: String
    public var magnificationFilter: String
    public var minificationFilterBias: Float
    public var emitterCells: [CAEmitterCell]?
    public var style: [NSObject : AnyObject]?
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容