gpt4 book ai didi

ios - 告诉 iOS 不要调整 SKNode 动画纹理的大小?

转载 作者:可可西里 更新时间:2023-11-01 02:19:19 25 4
gpt4 key购买 nike

我正在使用 Swift 编写适用于 iOS 的游戏。

游戏正在使用一组纹理进行初始化。我在动画中使用这些纹理。

我每次都创建一个大小不同的SKNode:

let node = SKSpriteNode(texture: nodeTextures[0])
node.size = size; //from func argument
node.runAction(SKAction.repeatActionForever
(SKAction.animateWithTextures
(nodeTextures, timePerFrame: 0.05, resize: false, restore: false)))

使用调整大小的纹理渲染的节点。

我能以某种方式告诉 iOS 不调整纹理大小吗?如果是,我能以某种方式在 SKNode 中定义纹理的原点坐标吗?

最佳答案

使用纹理和动画创建一个子节点。调用 node.addChild(textureNode) 使其成为子节点。然后在该子节点上运行该操作,该子节点将始终与 node 处于相同位置,但不会更改 node 的大小。像这样:

let node = SKSpriteNode()
node.size = size; //from func argument
// Create texture node to hold the texture
let textureNode = SKSpriteNode(texture: nodeTextures[0])
node.addChild(textureNode)
textureNode.runAction(SKAction.repeatActionForever
(SKAction.animateWithTextures
(nodeTextures, timePerFrame: 0.05, resize: false, restore: false)))

这允许您稍后调整 node 的大小,而无需重新缩放 textureNode 中的图像。

关于ios - 告诉 iOS 不要调整 SKNode 动画纹理的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32161324/

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