     
     public var physicalLens = PhysicalLensNode()
     public var physicalImagingSurface = PhysicalImagingSurfaceNode()
+    
+    public required init() {
+
+    }
     
     public func parseXML(nodes: Container, elem: XMLElement) {
         if let id = elem.attributes["id"] {

        }
    }
    
    public func generate(containers: [String: Container], options: [String: Any] = [:]) -> MDLType {
        let cam = MDLCamera()
        
        cam.nearVisibilityDistance = self.nearVisibilityDistance

    public var vertexDescriptor: String = "default"
    public var bufferAllocator: String = "default"
    
    public required init() {
        
    }
    
    // TODO: error handling for preserveTopology
    // - (when true the constructor throws. for now, my protocol can't handle this)
    public var preserveTopology: Bool = false
