Cree \ (Use) SKView como \ (en a) factory \ (clase estática)

Quiero hacer un SKView que pueda usar como fábrica para hacer SKShapeNodes y "renderizarlos" en texturas.

Pero no puedo encontrar cómo iniciaría tal cosa, y no tengo suerte, en absoluto.

¿Cómo hago un SKView independiente para este propósito?

¿O hay una mejor manera de hacer esto que evita usar el gamecene?

Aquí está mi esfuerzo COMPLETO para hacer una fábrica,esto se queja de que la textura (de:) es ambigua. No tengo idea de lo que eso significa.

import SpriteKit

class Make: SKView{

static func circle() -> SKSpriteNode {
    let myShapeNode = SKShapeNode(circleOfRadius: 100)
    myShapeNode.fillColor = SKColor.lightGray
    myShapeNode.strokeColor = SKColor.gray
    let tex = texture(from: myShapeNode)
    return SKSpriteNode(texture: tex)
    }

required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
    }   
}
Actualizar

Después de más tiempo inútil en Google, intenté buscar la inicialización de una UIView, y encontré y agregué este fragmento de código, que se inicializa en un marco que parece imaginario ... ¡pero funciona! No sé por qué ... pero no puedo usarlo como un método de fábrica, solo como un método de instancia, de esta manera:

import Foundation
import SpriteKit

class Make: SKView{

    // added randomly found UIView initialisation "code"...
    override init(frame: CGRect) {
        super.init(frame: frame)
    }

    func circle() -> SKSpriteNode {
        let myShapeNode = SKShapeNode(circleOfRadius: 100)
        myShapeNode.fillColor = SKColor.lightGray
        myShapeNode.strokeColor = SKColor.gray
        let tex = texture(from: myShapeNode)
        return SKSpriteNode(texture: tex)
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta