【问题标题】:SKEmitterNode not showing particleSKEmitterNode 不显示粒子
【发布时间】:2016-03-09 12:18:55
【问题描述】:

我想知道我的代码有什么问题,它没有正确显示粒子。

这是预期的粒子

实现

physicsWorld.contactDelegate = self

    self.scene?.backgroundColor = UIColor.blackColor()

    self.scene?.size = CGSize(width: 640, height: 1136)

    self.addChild(SKEmitterNode(fileNamed: "MagicParticle")!)

【问题讨论】:

    标签: xcode swift skemitternode


    【解决方案1】:

    您应该先尝试安全地解包粒子文件,以确保它不能为 nil

     if let particle = SKEmitterNode(fileNamed: "MagicParticle") {
        particle.position = ...
        addChild(particle)
     }
    

    奇怪的是它不起作用,看着你的照片好像你没有错字。 粒子效果里默认的 spark.png 改了吗? 尝试清理您的项目,或者如果仍然无法正常工作,请删除效果并重新创建它

    作为旁注,您可以删除 2 个单词

     scene?...
    

    你已经在一个 SKScene 中,所以 self 就是这个场景,因此你可以说

     self.backgroundColor = ...
     self.size = ...
    

    或更好

     backgroundColor = ...
     size = ...
    

    作为 swift 中的一般良好编码实践,请尝试仅在编译器也强制您时使用“self”。所以说

    addChild(...)
    

    而不是

    self.addChild(...)
    

    【讨论】:

      【解决方案2】:

      我认为你应该也包括文件的扩展名,像这样。

      self.addChild(SKEmitterNode(fileNamed: "MagicParticle.sks")!)
      

      【讨论】:

        猜你喜欢
        • 2017-08-11
        • 2017-04-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多