精灵包 |斯威夫特3 |将关卡编辑器中的 SKSpritenode 分配给 SKNode

Posted

技术标签:

【中文标题】精灵包 |斯威夫特3 |将关卡编辑器中的 SKSpritenode 分配给 SKNode【英文标题】:Spritekit | Swift3 | Assigning a SKSpritenode in the level editor to a SKNode 【发布时间】:2016-10-21 11:57:29 【问题描述】:

我在Level1.sks 中有一个SKSpritenode,名为“ballNode”。 这是通过GameScene 加载的。

ballNode = childNode(withName: "ballNode") as? SKSpriteNode
    ballNode?.physicsBody = SKPhysicsBody(circleOfRadius: (ballNode?.frame.size.width)! / 2)
    ballNode?.physicsBody!.categoryBitMask = PhysicsCategory.ballCategory
    ballNode?.physicsBody!.contactTestBitMask = PhysicsCategory.completeObjectNodeCategory

默认情况下,ballNode 具有场景的父级。 如何将ballNode 添加到名为_gameNodeSKNode

_gameNode = SKNode()
self.addChild(_gameNode)

当我尝试通过代码将ballNode 添加到SKnode 时。它会引发错误。

_gameNode.addChild(ballNode!)

【问题讨论】:

使用 moveToParent() 这很容易。谢谢老哥 【参考方案1】:

感谢 KnightOfDragon。 解决办法是

ballNode?.move(toParent: _gameNode)

【讨论】:

以上是关于精灵包 |斯威夫特3 |将关卡编辑器中的 SKSpritenode 分配给 SKNode的主要内容,如果未能解决你的问题,请参考以下文章

SpriteKit 关卡编辑器纹理图集

如何控制多个同名精灵套件节点?

UE4学习-初学者内容包-编辑界面讲解

UE4学习-初学者内容包-编辑界面讲解

Unreal Engine 4 蓝图完全学习教程—— 初步尝试

斯威夫特:分数增加两次,因为碰撞被检测到两次?