Ios 当我以编程方式添加时,SKSpriteNode不受重力行为的影响

Ios 当我以编程方式添加时,SKSpriteNode不受重力行为的影响,ios,swift,skspritenode,Ios,Swift,Skspritenode,我不熟悉Swift游戏 我试图将重心放在屏幕的中心,所有其他物体(SKSpriteNode)都会被吸引到屏幕的中心 我成功地在中心创建了重力点 问题是, 1 我通过在中拖放图像,将图像添加到场景中 .sks文件。那张照片被我的重心吸引住了。 (图像朝着重力点移动,然后移出 屏幕快速移动,我不知道为什么它没有保持重力 (点) 2 我通过编程添加了另一个图像 图像已成功创建,但未被吸引 重力点 为什么当我通过拖放添加时它会被吸引,而当我通过编程方式添加时它不会被吸引 请指出我犯了什么错误。谢谢你抽出

我不熟悉Swift游戏

我试图将重心放在屏幕的中心,所有其他物体(SKSpriteNode)都会被吸引到屏幕的中心

我成功地在中心创建了重力点

问题是,

1

我通过在中拖放图像,将图像添加到场景中
.sks
文件。那张照片被我的重心吸引住了。 (图像朝着重力点移动,然后移出 屏幕快速移动,我不知道为什么它没有保持重力 (点)

2

我通过编程添加了另一个图像

图像已成功创建,但未被吸引 重力点

为什么当我通过拖放添加时它会被吸引,而当我通过编程方式添加时它不会被吸引


请指出我犯了什么错误。谢谢你抽出时间。(:

您必须像这样初始化物理体:player1.physicsBody=SKPhysicsBody(圆环半径:(player1.size.width/2))
    let player1 = SKSpriteNode(imageNamed: "dot")
    player1.position = CGPoint(x: size.width / 4, y: size.height / 4)
    player1.setScale(0.05) 
    player1.physicsBody?.dynamic = true
    player1.physicsBody?.allowsRotation = true
    player1.physicsBody?.affectedByGravity = true
    addChild(player1)