gpt4 book ai didi

swift - 如何更改 SKScene 的呈现 View ?

转载 作者:行者123 更新时间:2023-11-28 07:00:54 25 4
gpt4 key购买 nike

我已经检查了类引用和其他几个 S.O.发布并且似乎无法按照我需要的方式获得我的场景。到目前为止,我发现可以将 SKScene.size 属性设置为某个 CGSize, View 将显示该大小的 SKScene。但是,当我更改 size 属性的值时,我的设备屏幕上的视觉效果并没有发生任何变化。

我创建了一个 SKShapeNode 作为我的“世界”,并将其大小设置为 7000 单位 x 7000 单位

world = SKShapeNode(rectOfSize: CGSizeMake(7000, 7000))

当我加载场景时,正如预期的那样,只显示了世界的一小部分。

我知道这与屏幕的高度和宽度不成比例,但为了简单起见,如何更改 SKScene 以在设备屏幕上显示整个 7000 x 7000 的世界?

最佳答案

您不应该以这种方式改变场景的大小。创建一个 7000*7000 点的场景将使 Retina iPad 以每秒 60 次的速度渲染 98 兆像素。哎哟。

缩放子节点

只需创建一个新的 SKnode sceneContents 并将您的 SKShapeNode 作为子节点添加到该节点。当您希望“缩放”时,缩小 sceneContents 节点(通过 SKNode 的 xScaleyScale 属性)。您可以为此使用 SKAction,因此它既漂亮又流畅。

SKCameraNode

如果您可以迁移到 iOS 9,我建议您查看 SKCameraNode .这目前仍处于测试阶段,但效果很好。只需创建一个 SKCameraNode,将其添加到场景并将其设置为场景的相机。

SKCameraNode *camera = [SKCameraNode new];
[self.scene addChild:camera];
self.scene.camera = camera;
camera.xScale = 10.f;
camera.yScale = 10.f;

嗯,我应该在某个时候学习 Swift。尽管如此,这个概念应该是清楚的。您可以使用 SKAction 通过动画操作相机节点。

关于swift - 如何更改 SKScene 的呈现 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32062888/

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