我正在以編程方式設置我的攝像機節點。我的目標是使相機跟隨播放器節點的x軸,但相機的y軸高於「player.position.y」,如「player.position.y + 300」。如何設置SKCameraNode相對於節點的位置x和y?
我發現這個Google上搜尋了一會兒這個問題後:
cam.position = CGPoint(X:player.position.x,Y:player.position.y + 500)
我把這個在didMove(與攝像機的設置:)一起:
cam = SKCameraNode() //initialize and assign an instance of SKCameraNode to the cam variable.
self.camera = cam //set the scene's camera to reference cam
//cam.setScale(1.3)
cam.position = CGPoint(x: player.position.x, y: player.position.y + 500)
addChild(cam) //have cam be a child
我試圖把它前後添加子(CAM)行之後,但cam.position線沒有影響。
我已經嘗試將我的相機設置爲玩家節點和場景的子節點,但是無論採用哪種方法,我都可以讓相機跟隨播放器,但我無法弄清楚如何操縱X和Y分開。我已經能夠影響相機位置的唯一方法是使用「設置比例」,但更多的是全球放大/縮小。
任何意見將不勝感激。
編輯:回答問題的第一部分是我所需要的:
cam = SKCameraNode()
player.addChild(cam)
cam.position = CGPoint(x:0,y:500)
self.camera = cam
感謝您的迴應!這幾乎是完美的!您的代碼按預期工作,但有副作用。 – genericguy25
有什麼副作用? – Knight0fDragon
感謝您的回覆!這幾乎是完美的!您的代碼按預期工作,但有副作用。當玩家跳轉到我的玩家時(applyImpulse),整個場景似乎緩慢地跟隨着玩家,直到玩家再次擊中地面。 – genericguy25