2016-04-11 56 views
0

我有一個SKSpriteNode我使用像一個按鈕。 當我敲打,它調用在SCNScene如何獲得SCNTransaction結束

SCNTransaction.begin() 
SCNTransaction.setAnimationDuration(2) 

SCNTransaction.setCompletionBlock { 
     SCNTransaction.begin() 
     SCNTransaction.setAnimationDuration(2) 

     self.ResetCameraButton.texture = self.FunctionAtlas.textureNamed("ResetCameraSelected") 

     self.cameraOrbit.eulerAngles.y = initialAngleY 
     self.cameraOrbit.eulerAngles.x = initialAngleX 
     self.cameraNode.camera?.orthographicScale = self.initialPinchScale 

     SCNTransaction.commit() 

      } 
SCNTransaction.commit() 

這是按鈕移動相機的功能:enter image description here,這是竊聽按鈕:enter image description here

我想提出第二圖像,作爲我的SKSpriteNode的紋理,動畫過程中和第一個,只有當動畫結束時

如果我下面添加:

self.ResetCameraButton.texture = self.FunctionAtlas.textureNamed( 「ResetCameraUnselected」)

設置未選擇質感,這是行不通的!

我該如何獲得動畫結束以將未選定的紋理設置爲我的SKSpriteNode?

回答

1

SKNode s是SpriteKit的一部分,它不理解SCNTransaction。只有在文檔中標記爲「動畫」的SceneKit API才能受益於此功能。

+0

好的,但我怎麼能得到這種效果? –