gpt4 book ai didi

macos - SKSpriteNode 表示正确的大小

转载 作者:行者123 更新时间:2023-12-03 17:02:44 27 4
gpt4 key购买 nike

我正在尝试绘制一个 30 高且具有视口(viewport)宽度的 SKSpriteNode。这是代码(在 SKScene 内):

    func floor() -> SKSpriteNode{

let floor = SKSpriteNode(color: SKColor.greenColor(), size: CGSizeMake(self.size.width, 20))

floor.position = CGPointMake(0, 0)

floor.physicsBody = SKPhysicsBody(rectangleOfSize: floor.size)

floor.physicsBody.dynamic = false

return floor
}

Sprite 被添加到场景中,如下所示:

    override func didMoveToView(view: SKView!){

if (!contentCreated){

self.createContents()
contentCreated = true
}

}

func createContents() {

self.backgroundColor = SKColor.blackColor()

self.scaleMode = SKSceneScaleMode.AspectFill

self.addChild(self.floor())

}

Sprite 的高度是 30(看上去),但长度似乎是视口(viewport)宽度的一半,而不是整个宽度。创建这个场景的代码是:

    var mainScene = MainScene(size: self.view.frame.size)
spriteView.presentScene(mainScene)

此代码位于 ViewController 内部。

有人知道会发生什么吗?

最佳答案

Sprite 节点的默认 anchorPoint{ 0.5, 0.5 },这可能会导致上面的代码仅将 Sprite 的一半定位在屏幕上。尝试将 anchorPoint 设置为 { 0.0, 0.0 } 并查看是否有帮助。

关于macos - SKSpriteNode 表示正确的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25110603/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com