【发布时间】:2016-02-22 06:44:59
【问题描述】:
我想知道是否有比我当前的方法更有效的方法来更改 touchesBegan 中 SKSpriteNode 的属性。以下是我的方法:
【问题讨论】:
-
为什么需要有 if ([node.name isEqualToString:@"Start"]){ 然后 if ([node2.name isEqualToString:@"Start"]){ ?
-
另外说明,您必须尽可能多地重复使用纹理。方法 textureWithImageNamed 加载纹理,这是一个昂贵的操作。也许您可以预先加载纹理并稍后应用它。
-
您能否在
for循环之外创建SKTexture(然后将node2.texture分配给该纹理?那会是更好的方法吗? -
当我在第一个
for循环中尝试时,我无法访问/更改名为“Start”的节点的属性;那是因为它是一个精灵节点。这就是为什么我必须创建另一个访问精灵节点的for循环。我做了一个编辑:它应该是SKNode *node = [self nodeAtPoint: location];
标签: objective-c sprite-kit skspritenode touchesbegan