2016-08-26 4 views
1

Я недавно обновился до последней версии Xcode 8 beta 6. Я был ранее на бета-версии 4 (я думаю). Я попытался скомпилировать мой код и получил эту ошибку:Ошибка Strange SceneKit Linker в Xcode 8 Beta 6

enter image description here

Вот фрагмент кода:

private func setupPlane() { 

    // create plane geometry with size and material properties 
    let myPlane = SCNPlane(width: 10000.0, height: 10000.0) 
    myPlane.firstMaterial!.diffuse.contents = NSColor.orange.cgColor 
    myPlane.firstMaterial!.specular.contents = NSColor.white.cgColor 

    // intialize noe 
    let planeNode = SCNNode() 
    // assign plane geometry to the node 
    planeNode.geometry = myPlane 

    // rotate -90.0 about the x-axis 
    let rotMat = SCNMatrix4MakeRotation(-CGFloat(M_PI/3.0), 1.0, 0.0, 0.0) 
    planeNode.transform = rotMat 
    planeNode.position = SCNVector3Make(0.0, 0.0, 0.0) 

    // setup the node's physics body property 
    planeNode.physicsBody = SCNPhysicsBody(type: .static, shape: SCNPhysicsShape(geometry: myPlane, options: nil)) 
    planeNode.physicsBody!.categoryBitMask = PhysicsMask3DOF.plane.rawValue 

    // add to scene 
    sceneView.scene!.rootNode.addChildNode(planeNode) 
} 

Если я закомментировать две строки, где тело физика присвоенные, а затем его категория set, код компилируется с нулевыми ошибками. Я не совсем понимаю, о чем эта ошибка пытается намекнуть. Любые предложения очень ценятся.

ответ

2

Это известная проблема в компиляторе. В качестве временного решения можно использовать [:] вместо nil:

SCNPhysicsShape(geometry: myPlane, options: [:]) 
+0

, если вы когда-нибудь встретиться, я должен тебе пиво! Это исправило это! Я был до 1:30 утра, пытаясь найти источник. – xBACP

+0

Можете ли вы уточнить, что такое ошибка? Это только в 8-бета-6? Это происходит в других ситуациях? –

+0

вы можете узнать больше об этом здесь: https://github.com/apple/swift/pull/4299 – mnuages