Как использовать SKScene в качестве SCNMaterial? - PullRequest
1 голос
/ 06 января 2020

У меня SKScene в качестве SCNMaterial, который я хочу применить в SCNSphere. Я хочу добавить точку на поверхности сферы, которая должна быть частично видимой, даже если она находится на другой стороне сферы. Поэтому я хочу двухстороннюю текстуру. Но когда я использую spherematerial.isDoubleSided = true, я получаю слой whiti sh поверх моей сферы. Не уверен, почему это происходит.

Вот мой код:

    let surfacematerial =  SKScene(size: CGSize(width: 800, height: 400))
    surfacematerial.backgroundColor = SKColor.blue
    self.point.fillColor = SKColor.red
    self.point.lineWidth = 0
    self.point.position =  CGPoint(x: 200, y: 200)
    surfacematerial.addChild(point)

    let spherematerial = SCNMaterial()
        spherematerial.isDoubleSided = true
        spherematerial.diffuse.contents = surfacematerial

    let sphere = SCNSphere(radius: CGFloat(2))

        sphere.materials = [spherematerial]
        spherenode = SCNNode(geometry: sphere)
        spherenode.position = SCNVector3(x: 0, y: 0, z: 0)
        spherenode.opacity = CGFloat(0.9)
...