     
     public var allocator: MTKMeshBufferAllocator
     public var asset: MDLAsset {
-
+        
         let mesh = MDLMesh.newPlane(withDimensions: SIMD2<Float>(width, height), segments: SIMD2<UInt32>(widthSegments, heightSegments), geometryType: .triangles, allocator: allocator)
         let scatteringFunction = MDLScatteringFunction()
         let material = MDLMaterial(name: "baseMaterial", scatteringFunction: scatteringFunction)

        let colorProperty = MDLMaterialProperty(name: "cylinderColor", semantic: .baseColor, float4: SIMD4<Float>(Float(red), Float(green), Float(blue), Float(alpha)))
        material.setProperty(colorProperty)

         for submesh in mesh.submeshes!  {
             if let submesh = submesh as? MDLSubmesh {
                 submesh.material = material
             }
         }

         let asset = MDLAsset(bufferAllocator: allocator)
         asset.add(mesh)
    }
    public var height: Float = 1
    public var radius: Float = 0.25

        let colorProperty = MDLMaterialProperty(name: "sphereColor", semantic: .baseColor, float4: SIMD4<Float>(Float(red), Float(green), Float(blue), Float(alpha)))
        material.setProperty(colorProperty)

        for submesh in mesh.submeshes!  {
            if let submesh = submesh as? MDLSubmesh {
                submesh.material = material
            }
        }

        let asset = MDLAsset(bufferAllocator: allocator)
        asset.add(mesh)
        return asset
    }
    public var radius: Float = 0.25
    public var color: UIColor = .white
