     public static let flash: vector_float3 = float3(0.0, 0.0, 0.0)
     public static let exposure: vector_float3 = float3(1.0, 1.0, 1.0)
     public static let exposureCompression: vector_float2 = float2(1.0, 0.0)
+    
+    public required init() {
+        
+    }
 
     public func parseXML(nodes: Container, elem: XMLElement) {
         if let id = elem.attributes["id"] {

        self.lookFrom = cam.lookFrom
    }

    public func generate(containers: [String: Container], options: [String: Any] = [:]) -> MDLType {
        let cam = MDLStereoscopicCamera()
        
        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
