2017-01-13 3 views
0

Ich bin auf der Suche nach der Farbe meiner SCNBox regelmäßig zu ändern, zum Beispiel das Spiel entfalten hat seine Knoten fließenden Farben reibungslos.Wie kann ich den Fade/Übergang meines Knotens färben?

 let base = SCNBox(width: 1, height: 1, length: 1, chamferRadius: 0) 
     let emptyBase = SCNNode(geometry: base) 
     emptyBase.position = SCNVector3(0, 0.5, 0) 

     emptyBase.physicsBody = SCNPhysicsBody.kinematic() 
     //emptyBase.physicsBody!.restitution = 1 

     emptyBase.physicsBody!.categoryBitMask = CC.base.rawValue 


     if #available(iOS 9.0, *) { 
      emptyBase.physicsBody!.contactTestBitMask = CC.ball.rawValue 
     } else { 
      // Fallback on earlier versions 
      emptyBase.physicsBody!.collisionBitMask = CC.ball.rawValue 
     } 


      if GameViewController.gameOverlay!.scoreNumber >= 0 { 

       let defaultMaterial = SCNMaterial() 

        defaultMaterial.diffuse.contents = randomColor() 
        defaultMaterial.specular.contents = randomColor() 
        defaultMaterial.emission.contents = randomColor() 

       base.firstMaterial? = defaultMaterial 


      } 

     rootNode.addChildNode(emptyBase) 

    } 

Vielen Dank im Voraus!

Antwort

1

Man könnte so etwas wie dies mit impliziter Animation tun:

// Objective-C 

     [SCNTransaction setAnimationDuration:2.0]; 
     base.firstMaterial = defaultMaterial; 
Verwandte Themen