         }
     }
     
-    public func generate(containers: [String: Container], options: [String: Any]) -> MDLVertexDescriptor {
+    public func generate(containers: [String: Container] = [:], options: [String: Any] = [:]) -> MDLType {
         var desc = parentDescriptor?.generate(containers, options: options) ?? MDLVertexDescriptor()
         
         for attr in self.attributes {

        }
    }

    public func generate(containers: [String: Container], options: [String: Any] = [:]) -> MDLType {
        let transform = MDLTransform()
        transform.scale = self.scale
        transform.shear = self.shear

    public static let apertureBladeCount: Int = 0
    public static let maximumCircleOfConfusion: Float = 0.05
    public static let focusDistance: Float = 2.5
    
    public required init() {
        
    }

    // doc's don't list default shutterOpenInterval value,
    // - but (1/60) * 0.50 = 1/120 for 60fps and 50% shutter
