我在我的游戏场景中使用iOS 10.0中的以下代码

    //Shape storage
    let playerShape = SKShapeNode(circleOfRadius: 10 )

…颜色设置等
    //Get the texture from shape node
    let playerTexture = view?.texture(from: playerShape)

同样的代码在watchOS 3.0中不起作用
Xcode 8.0 beta 2关于视图的投诉:
Use of unresolved identifier 'view'
有人知道watchOS中的视图是什么等价物吗?
谢谢您。

最佳答案

如上所述,苹果手表的雪碧套件中没有任何视图。
所以这就是为什么你不能在你的代码中使用视图。
只要使用SKSpriteNode而不是做这样的事情,如果你想为其他东西的纹理。
例如,这里我想在圆2上使用circleOriginal纹理

  let circleOriginal = SKSpriteNode(imageNamed: "circle")
  let circleTexture = circleOriginal.texture

  let circle2 = SKSpriteNode(texture: circleTexture)

如果你想对Apple Watch游戏技术有一个惊人的概述,请查看Apple关于它的WWDC讲座(下面的幻灯片就是从这里开始的)。这说明了很多,并提供了很好的代码示例。
https://developer.apple.com/videos/play/wwdc2016/612/
这里是关键的区别。
这是苹果的非watchOS场景图
swift - 在watchOS 3中提取纹理-LMLPHP
这是苹果的场景图,对应于watchOS的场景图
swift - 在watchOS 3中提取纹理-LMLPHP
以下是watchOS的SpriteKit/SceneKit的推荐替代方案
swift - 在watchOS 3中提取纹理-LMLPHP

关于swift - 在watchOS 3中提取纹理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38416023/

10-13 06:02