Documentation Archive Developer
Search

ModelIO Changes for Swift

ModelIO

Modified MDLAsset
DeclarationProtocols
From
class MDLAsset : NSObject, NSCopying, NSFastEnumeration {
    init(URL URL: NSURL)
    init(URL URL: NSURL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    init(URL URL: NSURL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?, preserveTopology preserveTopology: Bool, error error: NSErrorPointer)
    func exportAssetToURL(_ URL: NSURL) -> Bool
    func exportAssetToURL(_ URL: NSURL, error error: ()) throws
    class func canImportFileExtension(_ extension: String) -> Bool
    class func canExportFileExtension(_ extension: String) -> Bool
    func boundingBoxAtTime(_ time: NSTimeInterval) -> MDLAxisAlignedBoundingBox
    var boundingBox: MDLAxisAlignedBoundingBox { get }
    var frameInterval: NSTimeInterval
    var startTime: NSTimeInterval
    var endTime: NSTimeInterval
    var URL: NSURL? { get }
    var bufferAllocator: MDLMeshBufferAllocator { get }
    var vertexDescriptor: MDLVertexDescriptor? { get }
    func addObject(_ object: MDLObject)
    func removeObject(_ object: MDLObject)
    var count: Int { get }
    subscript (_ index: Int) -> MDLObject? { get }
    func objectAtIndexedSubscript(_ index: Int) -> MDLObject?
    func objectAtIndex(_ index: Int) -> MDLObject
}
extension MDLAsset {
    convenience init(SCNScene scnScene: SCNScene)
    class func assetWithSCNScene(_ scnScene: SCNScene) -> Self
}
NSCopying, NSFastEnumeration
To
class MDLAsset : NSObject, NSCopying, NSFastEnumeration {
    init(url URL: URL)
    init(url URL: URL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    init(bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    init(url URL: URL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?, preserveTopology preserveTopology: Bool, error error: NSErrorPointer)
    func export(to URL: URL) -> Bool
    func export(to URL: URL) throws
    class func canImportFileExtension(_ extension: String) -> Bool
    class func canExportFileExtension(_ extension: String) -> Bool
    func childObjects(of objectClass: Swift.AnyClass) -> [MDLObject]
    func boundingBox(atTime time: TimeInterval) -> MDLAxisAlignedBoundingBox
    var boundingBox: MDLAxisAlignedBoundingBox { get }
    var frameInterval: TimeInterval
    var startTime: TimeInterval
    var endTime: TimeInterval
    var url: URL? { get }
    var bufferAllocator: MDLMeshBufferAllocator { get }
    var vertexDescriptor: MDLVertexDescriptor? { get }
    func add(_ object: MDLObject)
    func remove(_ object: MDLObject)
    var count: Int { get }
    subscript(_ index: Int) -> MDLObject? { get }
    func objectAtIndexedSubscript(_ index: Int) -> MDLObject?
    func object(at index: Int) -> MDLObject
    var masters: MDLObjectContainerComponent
    class func placeLightProbes(withDensity value: Float, heuristic type: MDLProbePlacement, using dataSource: MDLLightProbeIrradianceDataSource) -> [MDLLightProbe]
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLAsset : CVarArg {
}
extension MDLAsset : Equatable, Hashable {
    var hashValue: Int { get }
}
extension MDLAsset {
    class func placeLightProbes(withDensity value: Float, heuristic type: MDLProbePlacement, using dataSource: MDLLightProbeIrradianceDataSource) -> [MDLLightProbe]
}
extension MDLAsset {
    convenience init(scnScene scnScene: SCNScene)
    class func withSCNScene(_ scnScene: SCNScene) -> Self
    convenience init(scnScene scnScene: SCNScene, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    class func withSCNScene(_ scnScene: SCNScene, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?) -> Self
}
CVarArg, Equatable, Hashable, NSCopying, NSFastEnumeration

Declaration
From
func addObject(_ object: MDLObject)
To
func add(_ object: MDLObject)

Declaration
From
func boundingBoxAtTime(_ time: NSTimeInterval) -> MDLAxisAlignedBoundingBox
To
func boundingBox(atTime time: TimeInterval) -> MDLAxisAlignedBoundingBox

Declaration
From
var endTime: NSTimeInterval
To
var endTime: TimeInterval

Declaration
From
func exportAssetToURL(_ URL: NSURL, error error: ()) throws
To
func export(to URL: URL) throws

Declaration
From
var frameInterval: NSTimeInterval
To
var frameInterval: TimeInterval

Declaration
From
init(URL URL: NSURL)
To
init(url URL: URL)

Declaration
From
init(URL URL: NSURL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
To
init(url URL: URL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)

Declaration
From
init(URL URL: NSURL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?, preserveTopology preserveTopology: Bool, error error: NSErrorPointer)
To
init(url URL: URL, vertexDescriptor vertexDescriptor: MDLVertexDescriptor?, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?, preserveTopology preserveTopology: Bool, error error: NSErrorPointer)

Declaration
From
func objectAtIndex(_ index: Int) -> MDLObject
To
func object(at index: Int) -> MDLObject

Declaration
From
func removeObject(_ object: MDLObject)
To
func remove(_ object: MDLObject)

Declaration
From
var startTime: NSTimeInterval
To
var startTime: TimeInterval

Declaration
From
subscript (_ index: Int) -> MDLObject? { get }
To
subscript(_ index: Int) -> MDLObject? { get }

Modified MDLAsset.url
Declaration
From
var URL: NSURL? { get }
To
var url: URL? { get }

Modified MDLCamera
Declaration
From
class MDLCamera : MDLObject {
    var projectionMatrix: matrix_float4x4 { get }
    func frameBoundingBox(_ boundingBox: MDLAxisAlignedBoundingBox, setNearAndFar setNearAndFar: Bool)
    func lookAt(_ focusPosition: vector_float3)
    func lookAt(_ focusPosition: vector_float3, from cameraPosition: vector_float3)
    func rayTo(_ pixel: vector_int2, forViewPort size: vector_int2) -> vector_float3
    var nearVisibilityDistance: Float
    var farVisibilityDistance: Float
    var worldToMetersConversionScale: Float
    var barrelDistortion: Float
    var fisheyeDistortion: Float
    var opticalVignetting: Float
    var chromaticAberration: Float
    var focalLength: Float
    var focusDistance: Float
    var fieldOfView: Float
    var fStop: Float
    var apertureBladeCount: Int
    var maximumCircleOfConfusion: Float
    func bokehKernelWithSize(_ size: vector_int2) -> MDLTexture
    var shutterOpenInterval: NSTimeInterval
    var sensorVerticalAperture: Float
    var sensorAspect: Float
    var sensorEnlargement: vector_float2
    var sensorShift: vector_float2
    var flash: vector_float3
    var exposureCompression: vector_float2
    var exposure: vector_float3
}
extension MDLCamera {
    convenience init(SCNCamera scnCamera: SCNCamera)
    class func cameraWithSCNCamera(_ scnCamera: SCNCamera) -> Self
}
To
class MDLCamera : MDLObject {
    var projectionMatrix: matrix_float4x4 { get }
    var projection: MDLCameraProjection
    func frameBoundingBox(_ boundingBox: MDLAxisAlignedBoundingBox, setNearAndFar setNearAndFar: Bool)
    func look(at focusPosition: vector_float3)
    func look(at focusPosition: vector_float3, from cameraPosition: vector_float3)
    func ray(to pixel: vector_int2, forViewPort size: vector_int2) -> vector_float3
    var nearVisibilityDistance: Float
    var farVisibilityDistance: Float
    var worldToMetersConversionScale: Float
    var barrelDistortion: Float
    var fisheyeDistortion: Float
    var opticalVignetting: Float
    var chromaticAberration: Float
    var focalLength: Float
    var focusDistance: Float
    var fieldOfView: Float
    var fStop: Float
    var apertureBladeCount: Int
    var maximumCircleOfConfusion: Float
    func bokehKernel(withSize size: vector_int2) -> MDLTexture
    var shutterOpenInterval: TimeInterval
    var sensorVerticalAperture: Float
    var sensorAspect: Float
    var sensorEnlargement: vector_float2
    var sensorShift: vector_float2
    var flash: vector_float3
    var exposureCompression: vector_float2
    var exposure: vector_float3
}
extension MDLCamera {
    convenience init(scnCamera scnCamera: SCNCamera)
    class func withSCNCamera(_ scnCamera: SCNCamera) -> Self
}

Declaration
From
func bokehKernelWithSize(_ size: vector_int2) -> MDLTexture
To
func bokehKernel(withSize size: vector_int2) -> MDLTexture

Declaration
From
func lookAt(_ focusPosition: vector_float3)
To
func look(at focusPosition: vector_float3)

Declaration
From
func lookAt(_ focusPosition: vector_float3, from cameraPosition: vector_float3)
To
func look(at focusPosition: vector_float3, from cameraPosition: vector_float3)

Declaration
From
func rayTo(_ pixel: vector_int2, forViewPort size: vector_int2) -> vector_float3
To
func ray(to pixel: vector_int2, forViewPort size: vector_int2) -> vector_float3

Declaration
From
var shutterOpenInterval: NSTimeInterval
To
var shutterOpenInterval: TimeInterval

Declaration
From
class MDLColorSwatchTexture : MDLTexture {
    init(colorTemperatureGradientFrom colorTemperature1: Float, toColorTemperature colorTemperature2: Float, name name: String?, textureDimensions textureDimensions: vector_int2)
    init(colorGradientFrom color1: CGColor, toColor color2: CGColor, name name: String?, textureDimensions textureDimensions: vector_int2)
}
To
class MDLColorSwatchTexture : MDLTexture {
    init(colorTemperatureGradientFrom colorTemperature1: Float, toColorTemperature colorTemperature2: Float, name name: String?, textureDimensions textureDimensions: vector_int2)
    init(colorGradientFrom color1: CGColor, to color2: CGColor, name name: String?, textureDimensions textureDimensions: vector_int2)
}

Declaration
From
init(colorGradientFrom color1: CGColor, toColor color2: CGColor, name name: String?, textureDimensions textureDimensions: vector_int2)
To
init(colorGradientFrom color1: CGColor, to color2: CGColor, name name: String?, textureDimensions textureDimensions: vector_int2)

Declaration
From
enum MDLGeometryType : Int {
    case TypePoints
    case TypeLines
    case TypeTriangles
    case TypeTriangleStrips
    case TypeQuads
    case TypeVariableTopology
    static var KindPoints: MDLGeometryType { get }
    static var KindLines: MDLGeometryType { get }
    static var KindTriangles: MDLGeometryType { get }
    static var KindTriangleStrips: MDLGeometryType { get }
    static var KindQuads: MDLGeometryType { get }
}
To
enum MDLGeometryType : Int {
    case points
    case lines
    case triangles
    case triangleStrips
    case quads
    case variableTopology
}

Declaration
From
case TypeLines
To
case lines

Declaration
From
case TypePoints
To
case points

Declaration
From
case TypeQuads
To
case quads

Declaration
From
case TypeTriangles
To
case triangles

Declaration
From
case TypeTriangleStrips
To
case triangleStrips

Declaration
From
case TypeVariableTopology
To
case variableTopology

Declaration
From
enum MDLIndexBitDepth : UInt {
    case Invalid
    case UInt8
    static var Uint8: MDLIndexBitDepth { get }
    case UInt16
    static var Uint16: MDLIndexBitDepth { get }
    case UInt32
    static var Uint32: MDLIndexBitDepth { get }
}
To
enum MDLIndexBitDepth : UInt {
    case invalid
    case uInt8
    static var uint8: MDLIndexBitDepth { get }
    case uInt16
    static var uint16: MDLIndexBitDepth { get }
    case uInt32
    static var uint32: MDLIndexBitDepth { get }
}

Declaration
From
case Invalid
To
case invalid

Declaration
From
static var Uint16: MDLIndexBitDepth { get }
To
static var uint16: MDLIndexBitDepth { get }

Declaration
From
case UInt16
To
case uInt16

Declaration
From
static var Uint32: MDLIndexBitDepth { get }
To
static var uint32: MDLIndexBitDepth { get }

Declaration
From
case UInt32
To
case uInt32

Declaration
From
static var Uint8: MDLIndexBitDepth { get }
To
static var uint8: MDLIndexBitDepth { get }

Declaration
From
case UInt8
To
case uInt8

Modified MDLLight
Declaration
From
class MDLLight : MDLObject {
    func irradianceAtPoint(_ point: vector_float3) -> Unmanaged<CGColor>
    func irradianceAtPoint(_ point: vector_float3, colorSpace colorSpace: CGColorSpace) -> Unmanaged<CGColor>
    var lightType: MDLLightType
}
extension MDLLight {
    convenience init(SCNLight scnLight: SCNLight)
    class func lightWithSCNLight(_ scnLight: SCNLight) -> Self
}
To
class MDLLight : MDLObject {
    func irradiance(atPoint point: vector_float3) -> Unmanaged<CGColor>
    func irradiance(atPoint point: vector_float3, colorSpace colorSpace: CGColorSpace) -> Unmanaged<CGColor>
    var lightType: MDLLightType
    var colorSpace: String
}
extension MDLLight {
    convenience init(scnLight scnLight: SCNLight)
    class func withSCNLight(_ scnLight: SCNLight) -> Self
}

Declaration
From
func irradianceAtPoint(_ point: vector_float3) -> Unmanaged<CGColor>
To
func irradiance(atPoint point: vector_float3) -> Unmanaged<CGColor>

Declaration
From
func irradianceAtPoint(_ point: vector_float3, colorSpace colorSpace: CGColorSpace) -> Unmanaged<CGColor>
To
func irradiance(atPoint point: vector_float3, colorSpace colorSpace: CGColorSpace) -> Unmanaged<CGColor>

Modified MDLLightProbe
Declaration
From
class MDLLightProbe : MDLLight {
    init(reflectiveTexture reflectiveTexture: MDLTexture?, irradianceTexture irradianceTexture: MDLTexture?)
    func generateSphericalHarmonicsFromIrradiance(_ sphericalHarmonicsLevel: Int)
    var reflectiveTexture: MDLTexture? { get }
    var irradianceTexture: MDLTexture? { get }
    var sphericalHarmonicsLevel: Int { get }
    @NSCopying var sphericalHarmonicsCoefficients: NSData? { get }
}
extension MDLLightProbe {
     init?(textureSize textureSize: Int, forLocation transform: MDLTransform, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], reflectiveCubemap reflectiveCubemap: MDLTexture?, irradianceCubemap irradianceCubemap: MDLTexture?)
    class func lightProbeWithTextureSize(_ textureSize: Int, forLocation transform: MDLTransform, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], reflectiveCubemap reflectiveCubemap: MDLTexture?, irradianceCubemap irradianceCubemap: MDLTexture?) -> MDLLightProbe?
}
To
class MDLLightProbe : MDLLight {
    init(reflectiveTexture reflectiveTexture: MDLTexture?, irradianceTexture irradianceTexture: MDLTexture?)
    func generateSphericalHarmonics(fromIrradiance sphericalHarmonicsLevel: Int)
    var reflectiveTexture: MDLTexture? { get }
    var irradianceTexture: MDLTexture? { get }
    var sphericalHarmonicsLevel: Int { get }
    var sphericalHarmonicsCoefficients: Data? { get }
     init?(textureSize textureSize: Int, forLocation transform: MDLTransform, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], reflectiveCubemap reflectiveCubemap: MDLTexture?, irradianceCubemap irradianceCubemap: MDLTexture?)
    class func withTextureSize(_ textureSize: Int, forLocation transform: MDLTransform, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], reflectiveCubemap reflectiveCubemap: MDLTexture?, irradianceCubemap irradianceCubemap: MDLTexture?) -> MDLLightProbe?
}
extension MDLLightProbe {
     init?(textureSize textureSize: Int, forLocation transform: MDLTransform, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], reflectiveCubemap reflectiveCubemap: MDLTexture?, irradianceCubemap irradianceCubemap: MDLTexture?)
    class func withTextureSize(_ textureSize: Int, forLocation transform: MDLTransform, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], reflectiveCubemap reflectiveCubemap: MDLTexture?, irradianceCubemap irradianceCubemap: MDLTexture?) -> MDLLightProbe?
}

Declaration
From
func generateSphericalHarmonicsFromIrradiance(_ sphericalHarmonicsLevel: Int)
To
func generateSphericalHarmonics(fromIrradiance sphericalHarmonicsLevel: Int)

Declaration
From
@NSCopying var sphericalHarmonicsCoefficients: NSData? { get }
To
var sphericalHarmonicsCoefficients: Data? { get }

Declaration
From
enum MDLLightType : UInt {
    case Unknown
    case Ambient
    case Directional
    case Spot
    case Point
    case Linear
    case DiscArea
    case RectangularArea
    case SuperElliptical
    case Photometric
    case Probe
    case Environment
}
To
enum MDLLightType : UInt {
    case unknown
    case ambient
    case directional
    case spot
    case point
    case linear
    case discArea
    case rectangularArea
    case superElliptical
    case photometric
    case probe
    case environment
}

Declaration
From
case Ambient
To
case ambient

Declaration
From
case Directional
To
case directional

Declaration
From
case DiscArea
To
case discArea

Declaration
From
case Environment
To
case environment

Declaration
From
case Linear
To
case linear

Declaration
From
case Photometric
To
case photometric

Declaration
From
case Point
To
case point

Declaration
From
case Probe
To
case probe

Declaration
From
case RectangularArea
To
case rectangularArea

Declaration
From
case Spot
To
case spot

Declaration
From
case SuperElliptical
To
case superElliptical

Declaration
From
case Unknown
To
case unknown

Modified MDLMaterial
DeclarationProtocols
From
class MDLMaterial : NSObject, MDLNamed, NSFastEnumeration {
    init(name name: String, scatteringFunction scatteringFunction: MDLScatteringFunction)
    func setProperty(_ property: MDLMaterialProperty)
    func removeProperty(_ property: MDLMaterialProperty)
    func propertyNamed(_ name: String) -> MDLMaterialProperty?
    func propertyWithSemantic(_ semantic: MDLMaterialSemantic) -> MDLMaterialProperty?
    func removeAllProperties()
    var scatteringFunction: MDLScatteringFunction { get }
    var name: String
    var baseMaterial: MDLMaterial?
    subscript (_ idx: Int) -> MDLMaterialProperty? { get }
    func objectAtIndexedSubscript(_ idx: Int) -> MDLMaterialProperty?
    subscript (_ name: String) -> MDLMaterialProperty? { get }
    func objectForKeyedSubscript(_ name: String) -> MDLMaterialProperty?
    var count: Int { get }
}
extension MDLMaterial {
    convenience init(SCNMaterial scnMaterial: SCNMaterial)
    class func materialWithSCNMaterial(_ scnMaterial: SCNMaterial) -> Self
}
MDLNamed, NSFastEnumeration
To
class MDLMaterial : NSObject, MDLNamed, NSFastEnumeration {
    init(name name: String, scatteringFunction scatteringFunction: MDLScatteringFunction)
    func setProperty(_ property: MDLMaterialProperty)
    func remove(_ property: MDLMaterialProperty)
    func propertyNamed(_ name: String) -> MDLMaterialProperty?
    func property(with semantic: MDLMaterialSemantic) -> MDLMaterialProperty?
    func removeAllProperties()
    var scatteringFunction: MDLScatteringFunction { get }
    var name: String
    var base: MDLMaterial?
    subscript(_ idx: Int) -> MDLMaterialProperty? { get }
    func objectAtIndexedSubscript(_ idx: Int) -> MDLMaterialProperty?
    subscript(_ name: String) -> MDLMaterialProperty? { get }
    func objectForKeyedSubscript(_ name: String) -> MDLMaterialProperty?
    var count: Int { get }
    var materialFace: MDLMaterialFace
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLMaterial : CVarArg {
}
extension MDLMaterial : Equatable, Hashable {
    var hashValue: Int { get }
}
extension MDLMaterial {
    convenience init(scnMaterial scnMaterial: SCNMaterial)
    class func withSCNMaterial(_ scnMaterial: SCNMaterial) -> Self
}
CVarArg, Equatable, Hashable, MDLNamed, NSFastEnumeration

Declaration
From
var baseMaterial: MDLMaterial?
To
var base: MDLMaterial?

Declaration
From
func propertyWithSemantic(_ semantic: MDLMaterialSemantic) -> MDLMaterialProperty?
To
func property(with semantic: MDLMaterialSemantic) -> MDLMaterialProperty?

Declaration
From
func removeProperty(_ property: MDLMaterialProperty)
To
func remove(_ property: MDLMaterialProperty)

Declaration
From
subscript (_ idx: Int) -> MDLMaterialProperty? { get }
To
subscript(_ idx: Int) -> MDLMaterialProperty? { get }

Declaration
From
subscript (_ name: String) -> MDLMaterialProperty? { get }
To
subscript(_ name: String) -> MDLMaterialProperty? { get }

Declaration
From
enum MDLMaterialMipMapFilterMode : UInt {
    case Nearest
    case Linear
}
To
enum MDLMaterialMipMapFilterMode : UInt {
    case nearest
    case linear
}

Declaration
From
case Linear
To
case linear

Declaration
From
case Nearest
To
case nearest

DeclarationProtocols
From
class MDLMaterialProperty : NSObject, MDLNamed {
    convenience init()
    init(name name: String, semantic semantic: MDLMaterialSemantic)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float value: Float)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float2 value: vector_float2)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float3 value: vector_float3)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float4 value: vector_float4)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, matrix4x4 value: matrix_float4x4)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, URL URL: NSURL?)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, string string: String?)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, textureSampler textureSampler: MDLTextureSampler?)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, color color: CGColor)
    func setProperties(_ property: MDLMaterialProperty)
    var semantic: MDLMaterialSemantic
    var type: MDLMaterialPropertyType { get }
    var name: String
    var stringValue: String?
    @NSCopying var URLValue: NSURL?
    var textureSamplerValue: MDLTextureSampler?
    var color: CGColor?
    var floatValue: Float
    var float2Value: vector_float2
    var float3Value: vector_float3
    var float4Value: vector_float4
    var matrix4x4: matrix_float4x4
}
MDLNamed
To
class MDLMaterialProperty : NSObject, MDLNamed, NSCopying {
    convenience init()
    init(name name: String, semantic semantic: MDLMaterialSemantic)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float value: Float)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float2 value: vector_float2)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float3 value: vector_float3)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, float4 value: vector_float4)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, matrix4x4 value: matrix_float4x4)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, url URL: URL?)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, string string: String?)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, textureSampler textureSampler: MDLTextureSampler?)
    convenience init(name name: String, semantic semantic: MDLMaterialSemantic, color color: CGColor)
    func setProperties(_ property: MDLMaterialProperty)
    var semantic: MDLMaterialSemantic
    var type: MDLMaterialPropertyType { get }
    var name: String
    var stringValue: String?
    var urlValue: URL?
    var textureSamplerValue: MDLTextureSampler?
    var color: CGColor?
    var floatValue: Float
    var float2Value: vector_float2
    var float3Value: vector_float3
    var float4Value: vector_float4
    var matrix4x4: matrix_float4x4
    var luminance: Float
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLMaterialProperty : CVarArg {
}
extension MDLMaterialProperty : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLNamed, NSCopying

Declaration
From
convenience init(name name: String, semantic semantic: MDLMaterialSemantic, URL URL: NSURL?)
To
convenience init(name name: String, semantic semantic: MDLMaterialSemantic, url URL: URL?)

Declaration
From
@NSCopying var URLValue: NSURL?
To
var urlValue: URL?

Declaration
From
enum MDLMaterialPropertyType : UInt {
    case None
    case String
    case URL
    case Texture
    case Color
    case Float
    case Float2
    case Float3
    case Float4
    case Matrix44
}
To
enum MDLMaterialPropertyType : UInt {
    case none
    case string
    case URL
    case texture
    case color
    case float
    case float2
    case float3
    case float4
    case matrix44
}

Declaration
From
case Color
To
case color

Declaration
From
case Float
To
case float

Declaration
From
case Float2
To
case float2

Declaration
From
case Float3
To
case float3

Declaration
From
case Float4
To
case float4

Declaration
From
case Matrix44
To
case matrix44

Declaration
From
case None
To
case none

Declaration
From
case String
To
case string

Declaration
From
case Texture
To
case texture

Declaration
From
enum MDLMaterialSemantic : UInt {
    case BaseColor
    case Subsurface
    case Metallic
    case Specular
    case SpecularExponent
    case SpecularTint
    case Roughness
    case Anisotropic
    case AnisotropicRotation
    case Sheen
    case SheenTint
    case Clearcoat
    case ClearcoatGloss
    case Emission
    case Bump
    case Opacity
    case InterfaceIndexOfRefraction
    case MaterialIndexOfRefraction
    case ObjectSpaceNormal
    case TangentSpaceNormal
    case Displacement
    case DisplacementScale
    case AmbientOcclusion
    case AmbientOcclusionScale
    case None
    case UserDefined
}
To
enum MDLMaterialSemantic : UInt {
    case baseColor
    case subsurface
    case metallic
    case specular
    case specularExponent
    case specularTint
    case roughness
    case anisotropic
    case anisotropicRotation
    case sheen
    case sheenTint
    case clearcoat
    case clearcoatGloss
    case emission
    case bump
    case opacity
    case interfaceIndexOfRefraction
    case materialIndexOfRefraction
    case objectSpaceNormal
    case tangentSpaceNormal
    case displacement
    case displacementScale
    case ambientOcclusion
    case ambientOcclusionScale
    case none
    case userDefined
}

Declaration
From
case AmbientOcclusion
To
case ambientOcclusion

Declaration
From
case AmbientOcclusionScale
To
case ambientOcclusionScale

Declaration
From
case Anisotropic
To
case anisotropic

Declaration
From
case AnisotropicRotation
To
case anisotropicRotation

Declaration
From
case BaseColor
To
case baseColor

Declaration
From
case Bump
To
case bump

Declaration
From
case Clearcoat
To
case clearcoat

Declaration
From
case ClearcoatGloss
To
case clearcoatGloss

Declaration
From
case Displacement
To
case displacement

Declaration
From
case DisplacementScale
To
case displacementScale

Declaration
From
case Emission
To
case emission

Declaration
From
case InterfaceIndexOfRefraction
To
case interfaceIndexOfRefraction

Declaration
From
case MaterialIndexOfRefraction
To
case materialIndexOfRefraction

Declaration
From
case Metallic
To
case metallic

Declaration
From
case None
To
case none

Declaration
From
case ObjectSpaceNormal
To
case objectSpaceNormal

Declaration
From
case Opacity
To
case opacity

Declaration
From
case Roughness
To
case roughness

Declaration
From
case Sheen
To
case sheen

Declaration
From
case SheenTint
To
case sheenTint

Declaration
From
case Specular
To
case specular

Declaration
From
case SpecularExponent
To
case specularExponent

Declaration
From
case SpecularTint
To
case specularTint

Declaration
From
case Subsurface
To
case subsurface

Declaration
From
case TangentSpaceNormal
To
case tangentSpaceNormal

Declaration
From
case UserDefined
To
case userDefined

Declaration
From
enum MDLMaterialTextureFilterMode : UInt {
    case Nearest
    case Linear
}
To
enum MDLMaterialTextureFilterMode : UInt {
    case nearest
    case linear
}

Declaration
From
case Linear
To
case linear

Declaration
From
case Nearest
To
case nearest

Declaration
From
enum MDLMaterialTextureWrapMode : UInt {
    case Clamp
    case Repeat
    case Mirror
}
To
enum MDLMaterialTextureWrapMode : UInt {
    case clamp
    case `repeat`
    case mirror
}

Declaration
From
case Clamp
To
case clamp

Declaration
From
case Mirror
To
case mirror

Declaration
From
case Repeat
To
case `repeat`

Modified MDLMesh
Declaration
From
class MDLMesh : MDLObject {
    init(vertexBuffer vertexBuffer: MDLMeshBuffer, vertexCount vertexCount: Int, descriptor descriptor: MDLVertexDescriptor, submeshes submeshes: [MDLSubmesh])
    init(vertexBuffers vertexBuffers: [MDLMeshBuffer], vertexCount vertexCount: Int, descriptor descriptor: MDLVertexDescriptor, submeshes submeshes: [MDLSubmesh])
    func vertexAttributeDataForAttributeNamed(_ name: String) -> MDLVertexAttributeData?
    var boundingBox: MDLAxisAlignedBoundingBox { get }
    @NSCopying var vertexDescriptor: MDLVertexDescriptor
    var vertexCount: Int { get }
    var vertexBuffers: [MDLMeshBuffer] { get }
    var submeshes: NSMutableArray { get }
}
extension MDLMesh {
    func addAttributeWithName(_ name: String, format format: MDLVertexFormat)
    func addNormalsWithAttributeNamed(_ attributeName: String?, creaseThreshold creaseThreshold: Float)
    func addTangentBasisForTextureCoordinateAttributeNamed(_ textureCoordinateAttributeName: String, tangentAttributeNamed tangentAttributeName: String, bitangentAttributeNamed bitangentAttributeName: String?)
    func addTangentBasisForTextureCoordinateAttributeNamed(_ textureCoordinateAttributeName: String, normalAttributeNamed normalAttributeName: String, tangentAttributeNamed tangentAttributeName: String)
    func makeVerticesUnique()
}
extension MDLMesh {
    class func newEllipsoidWithRadii(_ radii: vector_float3, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, hemisphere hemisphere: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newCylinderWithHeight(_ height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newEllipticalConeWithHeight(_ height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newIcosahedronWithRadius(_ radius: Float, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newSubdividedMesh(_ mesh: MDLMesh, submeshIndex submeshIndex: Int, subdivisionLevels subdivisionLevels: Int) -> Self?
}
extension MDLMesh {
    func generateAmbientOcclusionTextureWithSize(_ textureSize: vector_int2, raysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateAmbientOcclusionTextureWithQuality(_ bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateAmbientOcclusionVertexColorsWithRaysPerSample(_ raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    func generateAmbientOcclusionVertexColorsWithQuality(_ bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    func generateLightMapTextureWithTextureSize(_ textureSize: vector_int2, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateLightMapTextureWithQuality(_ bakeQuality: Float, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateLightMapVertexColorsWithLightsToConsider(_ lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
}
extension MDLMesh {
    convenience init(SCNGeometry scnGeometry: SCNGeometry)
    class func meshWithSCNGeometry(_ scnGeometry: SCNGeometry) -> Self
}
To
class MDLMesh : MDLObject {
    init(bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    init(vertexBuffer vertexBuffer: MDLMeshBuffer, vertexCount vertexCount: Int, descriptor descriptor: MDLVertexDescriptor, submeshes submeshes: [MDLSubmesh])
    init(vertexBuffers vertexBuffers: [MDLMeshBuffer], vertexCount vertexCount: Int, descriptor descriptor: MDLVertexDescriptor, submeshes submeshes: [MDLSubmesh])
    func vertexAttributeData(forAttributeNamed name: String) -> MDLVertexAttributeData?
    func vertexAttributeData(forAttributeNamed name: String, as format: MDLVertexFormat) -> MDLVertexAttributeData?
    var boundingBox: MDLAxisAlignedBoundingBox { get }
    @NSCopying var vertexDescriptor: MDLVertexDescriptor
    var vertexCount: Int
    var vertexBuffers: [MDLMeshBuffer] { get }
    @NSCopying var submeshes: NSMutableArray?
    var allocator: MDLMeshBufferAllocator { get }
    func generateAmbientOcclusionTexture(withSize textureSize: vector_int2, raysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateAmbientOcclusionTexture(withQuality bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateAmbientOcclusionVertexColors(withRaysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    func generateAmbientOcclusionVertexColors(withQuality bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    func generateLightMapTexture(withTextureSize textureSize: vector_int2, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateLightMapTexture(withQuality bakeQuality: Float, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateLightMapVertexColorsWithLights(toConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    init(boxWithExtent extent: vector_float3, segments segments: vector_uint3, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(sphereWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(hemisphereWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, cap cap: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(cylinderWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, topCap topCap: Bool, bottomCap bottomCap: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(capsuleWithExtent extent: vector_float3, cylinderSegments segments: vector_uint2, hemisphereSegments hemisphereSegments: Int32, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(coneWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, cap cap: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(planeWithExtent extent: vector_float3, segments segments: vector_uint2, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(icosahedronWithExtent extent: vector_float3, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(meshBySubdividingMesh mesh: MDLMesh, submeshIndex submeshIndex: Int32, subdivisionLevels subdivisionLevels: UInt32, allocator allocator: MDLMeshBufferAllocator?)
    class func newBox(withDimensions dimensions: vector_float3, segments segments: vector_uint3, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newEllipsoid(withRadii radii: vector_float3, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, hemisphere hemisphere: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newCylinder(withHeight height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newEllipticalCone(withHeight height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newPlane(withDimensions dimensions: vector_float2, segments segments: vector_uint2, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newIcosahedron(withRadius radius: Float, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newSubdividedMesh(_ mesh: MDLMesh, submeshIndex submeshIndex: Int, subdivisionLevels subdivisionLevels: Int) -> Self?
    func addAttribute(withName name: String, format format: MDLVertexFormat)
    func addAttribute(withName name: String, format format: MDLVertexFormat, type type: String, data data: Data, stride stride: Int)
    func addAttribute(withName name: String, format format: MDLVertexFormat, type type: String, data data: Data, stride stride: Int, time time: TimeInterval)
    func addNormals(withAttributeNamed attributeName: String?, creaseThreshold creaseThreshold: Float)
    func addTangentBasis(forTextureCoordinateAttributeNamed textureCoordinateAttributeName: String, tangentAttributeNamed tangentAttributeNamed: String, bitangentAttributeNamed bitangentAttributeName: String?)
    func addTangentBasis(forTextureCoordinateAttributeNamed textureCoordinateAttributeName: String, normalAttributeNamed normalAttributeNamed: String, tangentAttributeNamed tangentAttributeNamed: String)
    func addUnwrappedTextureCoordinates(forAttributeNamed textureCoordinateAttributeName: String)
    func makeVerticesUnique()
    func replaceAttributeNamed(_ name: String, with newData: MDLVertexAttributeData)
    func updateAttributeNamed(_ name: String, with newData: MDLVertexAttributeData)
    func removeAttributeNamed(_ name: String)
}
extension MDLMesh {
    func addAttribute(withName name: String, format format: MDLVertexFormat)
    func addAttribute(withName name: String, format format: MDLVertexFormat, type type: String, data data: Data, stride stride: Int)
    func addAttribute(withName name: String, format format: MDLVertexFormat, type type: String, data data: Data, stride stride: Int, time time: TimeInterval)
    func addNormals(withAttributeNamed attributeName: String?, creaseThreshold creaseThreshold: Float)
    func addTangentBasis(forTextureCoordinateAttributeNamed textureCoordinateAttributeName: String, tangentAttributeNamed tangentAttributeNamed: String, bitangentAttributeNamed bitangentAttributeName: String?)
    func addTangentBasis(forTextureCoordinateAttributeNamed textureCoordinateAttributeName: String, normalAttributeNamed normalAttributeNamed: String, tangentAttributeNamed tangentAttributeNamed: String)
    func addUnwrappedTextureCoordinates(forAttributeNamed textureCoordinateAttributeName: String)
    func makeVerticesUnique()
    func replaceAttributeNamed(_ name: String, with newData: MDLVertexAttributeData)
    func updateAttributeNamed(_ name: String, with newData: MDLVertexAttributeData)
    func removeAttributeNamed(_ name: String)
}
extension MDLMesh {
    init(boxWithExtent extent: vector_float3, segments segments: vector_uint3, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(sphereWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(hemisphereWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, cap cap: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(cylinderWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, topCap topCap: Bool, bottomCap bottomCap: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(capsuleWithExtent extent: vector_float3, cylinderSegments segments: vector_uint2, hemisphereSegments hemisphereSegments: Int32, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(coneWithExtent extent: vector_float3, segments segments: vector_uint2, inwardNormals inwardNormals: Bool, cap cap: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(planeWithExtent extent: vector_float3, segments segments: vector_uint2, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(icosahedronWithExtent extent: vector_float3, inwardNormals inwardNormals: Bool, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?)
    init(meshBySubdividingMesh mesh: MDLMesh, submeshIndex submeshIndex: Int32, subdivisionLevels subdivisionLevels: UInt32, allocator allocator: MDLMeshBufferAllocator?)
    class func newBox(withDimensions dimensions: vector_float3, segments segments: vector_uint3, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newEllipsoid(withRadii radii: vector_float3, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, hemisphere hemisphere: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newCylinder(withHeight height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newEllipticalCone(withHeight height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newPlane(withDimensions dimensions: vector_float2, segments segments: vector_uint2, geometryType geometryType: MDLGeometryType, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newIcosahedron(withRadius radius: Float, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
    class func newSubdividedMesh(_ mesh: MDLMesh, submeshIndex submeshIndex: Int, subdivisionLevels subdivisionLevels: Int) -> Self?
}
extension MDLMesh {
    func generateAmbientOcclusionTexture(withSize textureSize: vector_int2, raysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateAmbientOcclusionTexture(withQuality bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateAmbientOcclusionVertexColors(withRaysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    func generateAmbientOcclusionVertexColors(withQuality bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
    func generateLightMapTexture(withTextureSize textureSize: vector_int2, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateLightMapTexture(withQuality bakeQuality: Float, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
    func generateLightMapVertexColorsWithLights(toConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
}
extension MDLMesh {
    convenience init(scnGeometry scnGeometry: SCNGeometry)
    class func withSCNGeometry(_ scnGeometry: SCNGeometry) -> Self
    convenience init(scnGeometry scnGeometry: SCNGeometry, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    class func withSCNGeometry(_ scnGeometry: SCNGeometry, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?) -> Self
}

Declaration
From
func addAttributeWithName(_ name: String, format format: MDLVertexFormat)
To
func addAttribute(withName name: String, format format: MDLVertexFormat)

Declaration
From
func addNormalsWithAttributeNamed(_ attributeName: String?, creaseThreshold creaseThreshold: Float)
To
func addNormals(withAttributeNamed attributeName: String?, creaseThreshold creaseThreshold: Float)

Declaration
From
func addTangentBasisForTextureCoordinateAttributeNamed(_ textureCoordinateAttributeName: String, normalAttributeNamed normalAttributeName: String, tangentAttributeNamed tangentAttributeName: String)
To
func addTangentBasis(forTextureCoordinateAttributeNamed textureCoordinateAttributeName: String, normalAttributeNamed normalAttributeNamed: String, tangentAttributeNamed tangentAttributeNamed: String)

Declaration
From
func addTangentBasisForTextureCoordinateAttributeNamed(_ textureCoordinateAttributeName: String, tangentAttributeNamed tangentAttributeName: String, bitangentAttributeNamed bitangentAttributeName: String?)
To
func addTangentBasis(forTextureCoordinateAttributeNamed textureCoordinateAttributeName: String, tangentAttributeNamed tangentAttributeNamed: String, bitangentAttributeNamed bitangentAttributeName: String?)

Declaration
From
func generateAmbientOcclusionTextureWithQuality(_ bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
To
func generateAmbientOcclusionTexture(withQuality bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool

Declaration
From
func generateAmbientOcclusionTextureWithSize(_ textureSize: vector_int2, raysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
To
func generateAmbientOcclusionTexture(withSize textureSize: vector_int2, raysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool

Declaration
From
func generateAmbientOcclusionVertexColorsWithQuality(_ bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
To
func generateAmbientOcclusionVertexColors(withQuality bakeQuality: Float, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool

Declaration
From
func generateAmbientOcclusionVertexColorsWithRaysPerSample(_ raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
To
func generateAmbientOcclusionVertexColors(withRaysPerSample raysPerSample: Int, attenuationFactor attenuationFactor: Float, objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool

Declaration
From
func generateLightMapTextureWithQuality(_ bakeQuality: Float, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
To
func generateLightMapTexture(withQuality bakeQuality: Float, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool

Declaration
From
func generateLightMapTextureWithTextureSize(_ textureSize: vector_int2, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool
To
func generateLightMapTexture(withTextureSize textureSize: vector_int2, lightsToConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String, materialPropertyNamed materialPropertyName: String) -> Bool

Declaration
From
func generateLightMapVertexColorsWithLightsToConsider(_ lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool
To
func generateLightMapVertexColorsWithLights(toConsider lightsToConsider: [MDLLight], objectsToConsider objectsToConsider: [MDLObject], vertexAttributeNamed vertexAttributeName: String) -> Bool

Declaration
From
class func newCylinderWithHeight(_ height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
To
class func newCylinder(withHeight height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self

Declaration
From
class func newEllipsoidWithRadii(_ radii: vector_float3, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, hemisphere hemisphere: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
To
class func newEllipsoid(withRadii radii: vector_float3, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, hemisphere hemisphere: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self

Declaration
From
class func newEllipticalConeWithHeight(_ height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
To
class func newEllipticalCone(withHeight height: Float, radii radii: vector_float2, radialSegments radialSegments: Int, verticalSegments verticalSegments: Int, geometryType geometryType: MDLGeometryType, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self

Declaration
From
class func newIcosahedronWithRadius(_ radius: Float, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self
To
class func newIcosahedron(withRadius radius: Float, inwardNormals inwardNormals: Bool, allocator allocator: MDLMeshBufferAllocator?) -> Self

DeclarationReadonly
From
var submeshes: NSMutableArray { get }
yes
To
@NSCopying var submeshes: NSMutableArray?
--

Declaration
From
func vertexAttributeDataForAttributeNamed(_ name: String) -> MDLVertexAttributeData?
To
func vertexAttributeData(forAttributeNamed name: String) -> MDLVertexAttributeData?

DeclarationReadonly
From
var vertexCount: Int { get }
yes
To
var vertexCount: Int
--

Modified MDLMeshBuffer
Declaration
From
protocol MDLMeshBuffer : NSObjectProtocol, NSCopying {
    func fillData(_ data: NSData, offset offset: Int)
    func map() -> MDLMeshBufferMap
    var length: Int { get }
    var allocator: MDLMeshBufferAllocator { get }
    var type: MDLMeshBufferType { get }
}
To
protocol MDLMeshBuffer : NSObjectProtocol, NSCopying {
    func fill(_ data: Data, offset offset: Int)
    func map() -> MDLMeshBufferMap
    var length: Int { get }
    var allocator: MDLMeshBufferAllocator { get }
    var type: MDLMeshBufferType { get }
}

Declaration
From
func fillData(_ data: NSData, offset offset: Int)
To
func fill(_ data: Data, offset offset: Int)

Declaration
From
protocol MDLMeshBufferAllocator : NSObjectProtocol {
    func newZone(_ capacity: Int) -> MDLMeshBufferZone
    func newZoneForBuffersWithSize(_ sizes: [NSNumber], andType types: [NSNumber]) -> MDLMeshBufferZone
    func newBuffer(_ length: Int, type type: MDLMeshBufferType) -> MDLMeshBuffer
    func newBufferWithData(_ data: NSData, type type: MDLMeshBufferType) -> MDLMeshBuffer
    func newBufferFromZone(_ zone: MDLMeshBufferZone?, length length: Int, type type: MDLMeshBufferType) -> MDLMeshBuffer?
    func newBufferFromZone(_ zone: MDLMeshBufferZone?, data data: NSData, type type: MDLMeshBufferType) -> MDLMeshBuffer?
}
To
protocol MDLMeshBufferAllocator : NSObjectProtocol {
    func newZone(_ capacity: Int) -> MDLMeshBufferZone
    func newZoneForBuffers(withSize sizes: [NSNumber], andType types: [NSNumber]) -> MDLMeshBufferZone
    func newBuffer(_ length: Int, type type: MDLMeshBufferType) -> MDLMeshBuffer
    func newBuffer(with data: Data, type type: MDLMeshBufferType) -> MDLMeshBuffer
    func newBuffer(from zone: MDLMeshBufferZone?, length length: Int, type type: MDLMeshBufferType) -> MDLMeshBuffer?
    func newBuffer(from zone: MDLMeshBufferZone?, data data: Data, type type: MDLMeshBufferType) -> MDLMeshBuffer?
}

Declaration
From
func newBufferFromZone(_ zone: MDLMeshBufferZone?, data data: NSData, type type: MDLMeshBufferType) -> MDLMeshBuffer?
To
func newBuffer(from zone: MDLMeshBufferZone?, data data: Data, type type: MDLMeshBufferType) -> MDLMeshBuffer?

Declaration
From
func newBufferFromZone(_ zone: MDLMeshBufferZone?, length length: Int, type type: MDLMeshBufferType) -> MDLMeshBuffer?
To
func newBuffer(from zone: MDLMeshBufferZone?, length length: Int, type type: MDLMeshBufferType) -> MDLMeshBuffer?

Declaration
From
func newBufferWithData(_ data: NSData, type type: MDLMeshBufferType) -> MDLMeshBuffer
To
func newBuffer(with data: Data, type type: MDLMeshBufferType) -> MDLMeshBuffer

Declaration
From
func newZoneForBuffersWithSize(_ sizes: [NSNumber], andType types: [NSNumber]) -> MDLMeshBufferZone
To
func newZoneForBuffers(withSize sizes: [NSNumber], andType types: [NSNumber]) -> MDLMeshBufferZone

DeclarationProtocols
From
class MDLMeshBufferData : NSObject, MDLMeshBuffer {
    init(type type: MDLMeshBufferType, length length: Int)
    init(type type: MDLMeshBufferType, data data: NSData?)
    var data: NSData { get }
}
MDLMeshBuffer
To
class MDLMeshBufferData : NSObject, MDLMeshBuffer {
    init(type type: MDLMeshBufferType, length length: Int)
    init(type type: MDLMeshBufferType, data data: Data?)
    var data: Data { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLMeshBufferData : CVarArg {
}
extension MDLMeshBufferData : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLMeshBuffer

Declaration
From
var data: NSData { get }
To
var data: Data { get }

Declaration
From
init(type type: MDLMeshBufferType, data data: NSData?)
To
init(type type: MDLMeshBufferType, data data: Data?)

DeclarationProtocols
From
class MDLMeshBufferDataAllocator : NSObject, MDLMeshBufferAllocator {
}
MDLMeshBufferAllocator
To
class MDLMeshBufferDataAllocator : NSObject, MDLMeshBufferAllocator {
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLMeshBufferDataAllocator : CVarArg {
}
extension MDLMeshBufferDataAllocator : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLMeshBufferAllocator

DeclarationProtocols
From
class MDLMeshBufferMap : NSObject {
    init(bytes bytes: UnsafeMutablePointer<Void>, deallocator deallocator: (() -> Void)?)
    var bytes: UnsafeMutablePointer<Void> { get }
}
--
To
class MDLMeshBufferMap : NSObject {
    init(bytes bytes: UnsafeMutableRawPointer, deallocator deallocator: (@escaping () -> Swift.Void)? = nil)
    var bytes: UnsafeMutableRawPointer { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLMeshBufferMap : CVarArg {
}
extension MDLMeshBufferMap : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Declaration
From
var bytes: UnsafeMutablePointer<Void> { get }
To
var bytes: UnsafeMutableRawPointer { get }

Declaration
From
init(bytes bytes: UnsafeMutablePointer<Void>, deallocator deallocator: (() -> Void)?)
To
init(bytes bytes: UnsafeMutableRawPointer, deallocator deallocator: (@escaping () -> Swift.Void)? = nil)

Declaration
From
enum MDLMeshBufferType : UInt {
    case Vertex
    case Index
}
To
enum MDLMeshBufferType : UInt {
    case vertex
    case index
}

Declaration
From
case Index
To
case index

Declaration
From
case Vertex
To
case vertex

DeclarationProtocols
From
class MDLMeshBufferZoneDefault : NSObject, MDLMeshBufferZone {
    var capacity: Int { get }
    var allocator: MDLMeshBufferAllocator { get }
}
MDLMeshBufferZone
To
class MDLMeshBufferZoneDefault : NSObject, MDLMeshBufferZone {
    var capacity: Int { get }
    var allocator: MDLMeshBufferAllocator { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLMeshBufferZoneDefault : CVarArg {
}
extension MDLMeshBufferZoneDefault : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLMeshBufferZone

Declaration
From
class MDLNormalMapTexture : MDLTexture {
    init(byGeneratingNormalMapWithTexture sourceTexture: MDLTexture, name name: String?, smoothness smoothness: Float, contrast contrast: Float)
}
To
class MDLNormalMapTexture : MDLTexture {
    init(byGeneratingNormalMapWith sourceTexture: MDLTexture, name name: String?, smoothness smoothness: Float, contrast contrast: Float)
}

Declaration
From
init(byGeneratingNormalMapWithTexture sourceTexture: MDLTexture, name name: String?, smoothness smoothness: Float, contrast contrast: Float)
To
init(byGeneratingNormalMapWith sourceTexture: MDLTexture, name name: String?, smoothness smoothness: Float, contrast contrast: Float)

Modified MDLObject
DeclarationProtocols
From
class MDLObject : NSObject, MDLNamed {
    func setComponent(_ component: MDLComponent, forProtocol protocol: Protocol)
    func componentConformingToProtocol(_ protocol: Protocol) -> MDLComponent?
    weak var parent: MDLObject?
    var transform: MDLTransformComponent?
    var children: MDLObjectContainerComponent
    func addChild(_ child: MDLObject)
    func boundingBoxAtTime(_ time: NSTimeInterval) -> MDLAxisAlignedBoundingBox
}
extension MDLObject {
    convenience init(SCNNode scnNode: SCNNode)
    class func objectWithSCNNode(_ scnNode: SCNNode) -> Self
}
MDLNamed
To
class MDLObject : NSObject, MDLNamed {
    func setComponent(_ component: MDLComponent, for protocol: Protocol)
    func componentConforming(to protocol: Protocol) -> MDLComponent?
    weak var parent: MDLObject?
    var instance: MDLObject?
    var path: String { get }
    func atPath(_ path: String) -> MDLObject
    var transform: MDLTransformComponent?
    var children: MDLObjectContainerComponent
    var hidden: Bool
    func addChild(_ child: MDLObject)
    func boundingBox(atTime time: TimeInterval) -> MDLAxisAlignedBoundingBox
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLObject : CVarArg {
}
extension MDLObject : Equatable, Hashable {
    var hashValue: Int { get }
}
extension MDLObject {
    convenience init(scnNode scnNode: SCNNode)
    class func withSCNNode(_ scnNode: SCNNode) -> Self
    convenience init(scnNode scnNode: SCNNode, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    class func withSCNNode(_ scnNode: SCNNode, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?) -> Self
}
CVarArg, Equatable, Hashable, MDLNamed

Declaration
From
func boundingBoxAtTime(_ time: NSTimeInterval) -> MDLAxisAlignedBoundingBox
To
func boundingBox(atTime time: TimeInterval) -> MDLAxisAlignedBoundingBox

Declaration
From
func componentConformingToProtocol(_ protocol: Protocol) -> MDLComponent?
To
func componentConforming(to protocol: Protocol) -> MDLComponent?

Declaration
From
func setComponent(_ component: MDLComponent, forProtocol protocol: Protocol)
To
func setComponent(_ component: MDLComponent, for protocol: Protocol)

DeclarationProtocols
From
class MDLObjectContainer : NSObject, MDLObjectContainerComponent {
}
MDLObjectContainerComponent
To
class MDLObjectContainer : NSObject, MDLObjectContainerComponent {
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLObjectContainer : CVarArg {
}
extension MDLObjectContainer : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLObjectContainerComponent

Declaration
From
protocol MDLObjectContainerComponent : MDLComponent, NSFastEnumeration {
    func addObject(_ object: MDLObject)
    func removeObject(_ object: MDLObject)
    var objects: [MDLObject] { get }
}
To
protocol MDLObjectContainerComponent : MDLComponent, NSFastEnumeration {
    func add(_ object: MDLObject)
    func remove(_ object: MDLObject)
    var objects: [MDLObject] { get }
}

Declaration
From
func addObject(_ object: MDLObject)
To
func add(_ object: MDLObject)

Declaration
From
func removeObject(_ object: MDLObject)
To
func remove(_ object: MDLObject)

Declaration
From
class MDLPhotometricLight : MDLPhysicallyPlausibleLight {
    init?(IESProfile URL: NSURL)
    func generateSphericalHarmonicsFromLight(_ sphericalHarmonicsLevel: Int)
    func generateCubemapFromLight(_ textureSize: Int)
    var lightCubeMap: MDLTexture? { get }
    var sphericalHarmonicsLevel: Int { get }
    @NSCopying var sphericalHarmonicsCoefficients: NSData? { get }
}
To
class MDLPhotometricLight : MDLPhysicallyPlausibleLight {
    init?(iesProfile URL: URL)
    func generateSphericalHarmonics(fromLight sphericalHarmonicsLevel: Int)
    func generateCubemap(fromLight textureSize: Int)
    var lightCubeMap: MDLTexture? { get }
    var sphericalHarmonicsLevel: Int { get }
    var sphericalHarmonicsCoefficients: Data? { get }
}

Declaration
From
func generateCubemapFromLight(_ textureSize: Int)
To
func generateCubemap(fromLight textureSize: Int)

Declaration
From
func generateSphericalHarmonicsFromLight(_ sphericalHarmonicsLevel: Int)
To
func generateSphericalHarmonics(fromLight sphericalHarmonicsLevel: Int)

Declaration
From
init?(IESProfile URL: NSURL)
To
init?(iesProfile URL: URL)

Declaration
From
@NSCopying var sphericalHarmonicsCoefficients: NSData? { get }
To
var sphericalHarmonicsCoefficients: Data? { get }

DeclarationProtocols
From
class MDLScatteringFunction : NSObject, MDLNamed {
    var name: String
    var baseColor: MDLMaterialProperty { get }
    var emission: MDLMaterialProperty { get }
    var specular: MDLMaterialProperty { get }
    var materialIndexOfRefraction: MDLMaterialProperty { get }
    var interfaceIndexOfRefraction: MDLMaterialProperty { get }
    var normal: MDLMaterialProperty { get }
    var ambientOcclusion: MDLMaterialProperty { get }
    var ambientOcclusionScale: MDLMaterialProperty { get }
}
MDLNamed
To
class MDLScatteringFunction : NSObject, MDLNamed {
    var name: String
    var baseColor: MDLMaterialProperty { get }
    var emission: MDLMaterialProperty { get }
    var specular: MDLMaterialProperty { get }
    var materialIndexOfRefraction: MDLMaterialProperty { get }
    var interfaceIndexOfRefraction: MDLMaterialProperty { get }
    var normal: MDLMaterialProperty { get }
    var ambientOcclusion: MDLMaterialProperty { get }
    var ambientOcclusionScale: MDLMaterialProperty { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLScatteringFunction : CVarArg {
}
extension MDLScatteringFunction : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLNamed

Declaration
From
class MDLSkyCubeTexture : MDLTexture {
    init(name name: String?, channelEncoding channelEncoding: MDLTextureChannelEncoding, textureDimensions textureDimensions: vector_int2, turbidity turbidity: Float, sunElevation sunElevation: Float, upperAtmosphereScattering upperAtmosphereScattering: Float, groundAlbedo groundAlbedo: Float)
    func updateTexture()
    var turbidity: Float
    var sunElevation: Float
    var upperAtmosphereScattering: Float
    var groundAlbedo: Float
    var horizonElevation: Float
    var groundColor: CGColor?
    var gamma: Float
    var exposure: Float
    var brightness: Float
    var contrast: Float
    var saturation: Float
    var highDynamicRangeCompression: vector_float2
}
To
class MDLSkyCubeTexture : MDLTexture {
    init(name name: String?, channelEncoding channelEncoding: MDLTextureChannelEncoding, textureDimensions textureDimensions: vector_int2, turbidity turbidity: Float, sunElevation sunElevation: Float, upperAtmosphereScattering upperAtmosphereScattering: Float, groundAlbedo groundAlbedo: Float)
    func update()
    var turbidity: Float
    var sunElevation: Float
    var upperAtmosphereScattering: Float
    var groundAlbedo: Float
    var horizonElevation: Float
    var groundColor: CGColor?
    var gamma: Float
    var exposure: Float
    var brightness: Float
    var contrast: Float
    var saturation: Float
    var highDynamicRangeCompression: vector_float2
}

Declaration
From
func updateTexture()
To
func update()

Modified MDLSubmesh
DeclarationProtocols
From
class MDLSubmesh : NSObject, MDLNamed {
    init(name name: String, indexBuffer indexBuffer: MDLMeshBuffer, indexCount indexCount: Int, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType, material material: MDLMaterial?)
    init(indexBuffer indexBuffer: MDLMeshBuffer, indexCount indexCount: Int, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType, material material: MDLMaterial?)
    init(name name: String, indexBuffer indexBuffer: MDLMeshBuffer, indexCount indexCount: Int, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType, material material: MDLMaterial?, topology topology: MDLSubmeshTopology?)
    init?(MDLSubmesh submesh: MDLSubmesh, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType)
    var indexBuffer: MDLMeshBuffer { get }
    var indexCount: Int { get }
    var indexType: MDLIndexBitDepth { get }
    var geometryType: MDLGeometryType { get }
    var material: MDLMaterial?
    var topology: MDLSubmeshTopology? { get }
    var name: String
}
extension MDLSubmesh {
    convenience init(SCNGeometryElement scnGeometryElement: SCNGeometryElement)
    class func submeshWithSCNGeometryElement(_ scnGeometryElement: SCNGeometryElement) -> Self
}
MDLNamed
To
class MDLSubmesh : NSObject, MDLNamed {
    init(name name: String, indexBuffer indexBuffer: MDLMeshBuffer, indexCount indexCount: Int, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType, material material: MDLMaterial?)
    init(indexBuffer indexBuffer: MDLMeshBuffer, indexCount indexCount: Int, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType, material material: MDLMaterial?)
    init(name name: String, indexBuffer indexBuffer: MDLMeshBuffer, indexCount indexCount: Int, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType, material material: MDLMaterial?, topology topology: MDLSubmeshTopology?)
    init?(mdlSubmesh submesh: MDLSubmesh, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType)
    var indexBuffer: MDLMeshBuffer { get }
    func indexBuffer(asIndexType indexType: MDLIndexBitDepth) -> MDLMeshBuffer
    var indexCount: Int { get }
    var indexType: MDLIndexBitDepth { get }
    var geometryType: MDLGeometryType { get }
    var material: MDLMaterial?
    var topology: MDLSubmeshTopology? { get }
    var name: String
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLSubmesh : CVarArg {
}
extension MDLSubmesh : Equatable, Hashable {
    var hashValue: Int { get }
}
extension MDLSubmesh {
    convenience init(scnGeometryElement scnGeometryElement: SCNGeometryElement)
    class func withSCNGeometryElement(_ scnGeometryElement: SCNGeometryElement) -> Self
    convenience init(scnGeometryElement scnGeometryElement: SCNGeometryElement, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?)
    class func withSCNGeometryElement(_ scnGeometryElement: SCNGeometryElement, bufferAllocator bufferAllocator: MDLMeshBufferAllocator?) -> Self
}
CVarArg, Equatable, Hashable, MDLNamed

Declaration
From
init?(MDLSubmesh submesh: MDLSubmesh, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType)
To
init?(mdlSubmesh submesh: MDLSubmesh, indexType indexType: MDLIndexBitDepth, geometryType geometryType: MDLGeometryType)

DeclarationProtocols
From
class MDLSubmeshTopology : NSObject {
    var faceTopology: MDLMeshBuffer?
    var faceCount: Int
    var vertexCreaseIndices: MDLMeshBuffer?
    var vertexCreases: MDLMeshBuffer?
    var vertexCreaseCount: Int
    var edgeCreaseIndices: MDLMeshBuffer?
    var edgeCreases: MDLMeshBuffer?
    var edgeCreaseCount: Int
    var holes: MDLMeshBuffer?
    var holeCount: Int
}
--
To
class MDLSubmeshTopology : NSObject {
    var faceTopology: MDLMeshBuffer?
    var faceCount: Int
    var vertexCreaseIndices: MDLMeshBuffer?
    var vertexCreases: MDLMeshBuffer?
    var vertexCreaseCount: Int
    var edgeCreaseIndices: MDLMeshBuffer?
    var edgeCreases: MDLMeshBuffer?
    var edgeCreaseCount: Int
    var holes: MDLMeshBuffer?
    var holeCount: Int
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLSubmeshTopology : CVarArg {
}
extension MDLSubmeshTopology : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Modified MDLTexture
DeclarationProtocols
From
class MDLTexture : NSObject, MDLNamed {
    convenience init?(named name: String)
    class func textureNamed(_ name: String) -> Self?
    convenience init?(named name: String, bundle bundleOrNil: NSBundle?)
    class func textureNamed(_ name: String, bundle bundleOrNil: NSBundle?) -> Self?
    convenience init?(cubeWithImagesNamed names: [String])
    class func textureCubeWithImagesNamed(_ names: [String]) -> Self?
    convenience init?(cubeWithImagesNamed names: [String], bundle bundleOrNil: NSBundle?)
    class func textureCubeWithImagesNamed(_ names: [String], bundle bundleOrNil: NSBundle?) -> Self?
    class func irradianceTextureCubeWithTexture(_ texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2) -> Self
    class func irradianceTextureCubeWithTexture(_ texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2, roughness roughness: Float) -> Self
    init(data pixelData: NSData?, topLeftOrigin topLeftOrigin: Bool, name name: String?, dimensions dimensions: vector_int2, rowStride rowStride: Int, channelCount channelCount: Int, channelEncoding channelEncoding: MDLTextureChannelEncoding, isCube isCube: Bool)
    func writeToURL(_ URL: NSURL) -> Bool
    func writeToURL(_ nsurl: NSURL, type type: CFString) -> Bool
    func imageFromTexture() -> Unmanaged<CGImage>?
    func texelDataWithTopLeftOrigin() -> NSData?
    func texelDataWithBottomLeftOrigin() -> NSData?
    func texelDataWithTopLeftOriginAtMipLevel(_ level: Int, create create: Bool) -> NSData?
    func texelDataWithBottomLeftOriginAtMipLevel(_ level: Int, create create: Bool) -> NSData?
    var dimensions: vector_int2 { get }
    var rowStride: Int { get }
    var channelCount: Int { get }
    var mipLevelCount: Int { get }
    var channelEncoding: MDLTextureChannelEncoding { get }
    var isCube: Bool
}
MDLNamed
To
class MDLTexture : NSObject, MDLNamed {
    init()
    convenience init?(named name: String)
    class func textureNamed(_ name: String) -> Self?
    convenience init?(named name: String, bundle bundleOrNil: Bundle?)
    class func textureNamed(_ name: String, bundle bundleOrNil: Bundle?) -> Self?
    convenience init?(cubeWithImagesNamed names: [String])
    class func textureCube(withImagesNamed names: [String]) -> Self?
    convenience init?(cubeWithImagesNamed names: [String], bundle bundleOrNil: Bundle?)
    class func textureCube(withImagesNamed names: [String], bundle bundleOrNil: Bundle?) -> Self?
    class func irradianceTextureCube(with texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2) -> Self
    class func irradianceTextureCube(with texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2, roughness roughness: Float) -> Self
    init(data pixelData: Data?, topLeftOrigin topLeftOrigin: Bool, name name: String?, dimensions dimensions: vector_int2, rowStride rowStride: Int, channelCount channelCount: Int, channelEncoding channelEncoding: MDLTextureChannelEncoding, isCube isCube: Bool)
    func write(to URL: URL) -> Bool
    func write(to nsurl: URL, type type: CFString) -> Bool
    func imageFromTexture() -> Unmanaged<CGImage>?
    func texelDataWithTopLeftOrigin() -> Data?
    func texelDataWithBottomLeftOrigin() -> Data?
    func texelDataWithTopLeftOrigin(atMipLevel level: Int, create create: Bool) -> Data?
    func texelDataWithBottomLeftOrigin(atMipLevel level: Int, create create: Bool) -> Data?
    var dimensions: vector_int2 { get }
    var rowStride: Int { get }
    var channelCount: Int { get }
    var mipLevelCount: Int { get }
    var channelEncoding: MDLTextureChannelEncoding { get }
    var isCube: Bool
    var hasAlphaValues: Bool
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLTexture : CVarArg {
}
extension MDLTexture : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLNamed

Declaration
From
convenience init?(cubeWithImagesNamed names: [String], bundle bundleOrNil: NSBundle?)
To
convenience init?(cubeWithImagesNamed names: [String], bundle bundleOrNil: Bundle?)

Declaration
From
init(data pixelData: NSData?, topLeftOrigin topLeftOrigin: Bool, name name: String?, dimensions dimensions: vector_int2, rowStride rowStride: Int, channelCount channelCount: Int, channelEncoding channelEncoding: MDLTextureChannelEncoding, isCube isCube: Bool)
To
init(data pixelData: Data?, topLeftOrigin topLeftOrigin: Bool, name name: String?, dimensions dimensions: vector_int2, rowStride rowStride: Int, channelCount channelCount: Int, channelEncoding channelEncoding: MDLTextureChannelEncoding, isCube isCube: Bool)

Declaration
From
convenience init?(named name: String, bundle bundleOrNil: NSBundle?)
To
convenience init?(named name: String, bundle bundleOrNil: Bundle?)

Declaration
From
class func irradianceTextureCubeWithTexture(_ texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2) -> Self
To
class func irradianceTextureCube(with texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2) -> Self

Declaration
From
class func irradianceTextureCubeWithTexture(_ texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2, roughness roughness: Float) -> Self
To
class func irradianceTextureCube(with texture: MDLTexture, name name: String?, dimensions dimensions: vector_int2, roughness roughness: Float) -> Self

Declaration
From
func texelDataWithBottomLeftOrigin() -> NSData?
To
func texelDataWithBottomLeftOrigin() -> Data?

Declaration
From
func texelDataWithBottomLeftOriginAtMipLevel(_ level: Int, create create: Bool) -> NSData?
To
func texelDataWithBottomLeftOrigin(atMipLevel level: Int, create create: Bool) -> Data?

Declaration
From
func texelDataWithTopLeftOrigin() -> NSData?
To
func texelDataWithTopLeftOrigin() -> Data?

Declaration
From
func texelDataWithTopLeftOriginAtMipLevel(_ level: Int, create create: Bool) -> NSData?
To
func texelDataWithTopLeftOrigin(atMipLevel level: Int, create create: Bool) -> Data?

Declaration
From
func writeToURL(_ URL: NSURL) -> Bool
To
func write(to URL: URL) -> Bool

Declaration
From
func writeToURL(_ nsurl: NSURL, type type: CFString) -> Bool
To
func write(to nsurl: URL, type type: CFString) -> Bool

Declaration
From
enum MDLTextureChannelEncoding : Int {
    case UInt8
    static var Uint8: MDLTextureChannelEncoding { get }
    case UInt16
    static var Uint16: MDLTextureChannelEncoding { get }
    case UInt24
    static var Uint24: MDLTextureChannelEncoding { get }
    case UInt32
    static var Uint32: MDLTextureChannelEncoding { get }
    case Float16
    case Float32
}
To
enum MDLTextureChannelEncoding : Int {
    case uInt8
    static var uint8: MDLTextureChannelEncoding { get }
    case uInt16
    static var uint16: MDLTextureChannelEncoding { get }
    case uInt24
    static var uint24: MDLTextureChannelEncoding { get }
    case uInt32
    static var uint32: MDLTextureChannelEncoding { get }
    case float16
    case float32
}

Declaration
From
case Float16
To
case float16

Declaration
From
case Float32
To
case float32

Declaration
From
static var Uint16: MDLTextureChannelEncoding { get }
To
static var uint16: MDLTextureChannelEncoding { get }

Declaration
From
case UInt16
To
case uInt16

Declaration
From
static var Uint24: MDLTextureChannelEncoding { get }
To
static var uint24: MDLTextureChannelEncoding { get }

Declaration
From
case UInt24
To
case uInt24

Declaration
From
static var Uint32: MDLTextureChannelEncoding { get }
To
static var uint32: MDLTextureChannelEncoding { get }

Declaration
From
case UInt32
To
case uInt32

Declaration
From
static var Uint8: MDLTextureChannelEncoding { get }
To
static var uint8: MDLTextureChannelEncoding { get }

Declaration
From
case UInt8
To
case uInt8

DeclarationProtocols
From
class MDLTextureFilter : NSObject {
    var sWrapMode: MDLMaterialTextureWrapMode
    var tWrapMode: MDLMaterialTextureWrapMode
    var rWrapMode: MDLMaterialTextureWrapMode
    var minFilter: MDLMaterialTextureFilterMode
    var magFilter: MDLMaterialTextureFilterMode
    var mipFilter: MDLMaterialMipMapFilterMode
}
--
To
class MDLTextureFilter : NSObject {
    var sWrapMode: MDLMaterialTextureWrapMode
    var tWrapMode: MDLMaterialTextureWrapMode
    var rWrapMode: MDLMaterialTextureWrapMode
    var minFilter: MDLMaterialTextureFilterMode
    var magFilter: MDLMaterialTextureFilterMode
    var mipFilter: MDLMaterialMipMapFilterMode
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLTextureFilter : CVarArg {
}
extension MDLTextureFilter : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

DeclarationProtocols
From
class MDLTextureSampler : NSObject {
    var texture: MDLTexture?
    var hardwareFilter: MDLTextureFilter?
    var transform: MDLTransform?
}
--
To
class MDLTextureSampler : NSObject {
    var texture: MDLTexture?
    var hardwareFilter: MDLTextureFilter?
    var transform: MDLTransform?
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLTextureSampler : CVarArg {
}
extension MDLTextureSampler : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Modified MDLTransform
DeclarationProtocols
From
class MDLTransform : NSObject, MDLTransformComponent {
    init(identity identity: ())
    convenience init(transformComponent component: MDLTransformComponent)
    convenience init(matrix matrix: matrix_float4x4)
    func setIdentity()
    func translationAtTime(_ time: NSTimeInterval) -> vector_float3
    func rotationAtTime(_ time: NSTimeInterval) -> vector_float3
    func shearAtTime(_ time: NSTimeInterval) -> vector_float3
    func scaleAtTime(_ time: NSTimeInterval) -> vector_float3
    func setTranslation(_ translation: vector_float3, forTime time: NSTimeInterval)
    func setRotation(_ rotation: vector_float3, forTime time: NSTimeInterval)
    func setShear(_ shear: vector_float3, forTime time: NSTimeInterval)
    func setScale(_ scale: vector_float3, forTime time: NSTimeInterval)
    func rotationMatrixAtTime(_ time: NSTimeInterval) -> matrix_float4x4
    var translation: vector_float3
    var rotation: vector_float3
    var shear: vector_float3
    var scale: vector_float3
}
MDLTransformComponent
To
class MDLTransform : NSObject, NSCopying, MDLTransformComponent {
    init(identity identity: ())
    convenience init(transformComponent component: MDLTransformComponent)
    convenience init(transformComponent component: MDLTransformComponent, resetsTransform resetsTransform: Bool)
    convenience init(matrix matrix: matrix_float4x4)
    convenience init(matrix matrix: matrix_float4x4, resetsTransform resetsTransform: Bool)
    func setIdentity()
    func translation(atTime time: TimeInterval) -> vector_float3
    func rotation(atTime time: TimeInterval) -> vector_float3
    func shear(atTime time: TimeInterval) -> vector_float3
    func scale(atTime time: TimeInterval) -> vector_float3
    func setTranslation(_ translation: vector_float3, forTime time: TimeInterval)
    func setRotation(_ rotation: vector_float3, forTime time: TimeInterval)
    func setShear(_ shear: vector_float3, forTime time: TimeInterval)
    func setScale(_ scale: vector_float3, forTime time: TimeInterval)
    func rotationMatrix(atTime time: TimeInterval) -> matrix_float4x4
    var translation: vector_float3
    var rotation: vector_float3
    var shear: vector_float3
    var scale: vector_float3
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLTransform : CVarArg {
}
extension MDLTransform : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, MDLTransformComponent, NSCopying

Declaration
From
func rotationAtTime(_ time: NSTimeInterval) -> vector_float3
To
func rotation(atTime time: TimeInterval) -> vector_float3

Declaration
From
func rotationMatrixAtTime(_ time: NSTimeInterval) -> matrix_float4x4
To
func rotationMatrix(atTime time: TimeInterval) -> matrix_float4x4

Declaration
From
func scaleAtTime(_ time: NSTimeInterval) -> vector_float3
To
func scale(atTime time: TimeInterval) -> vector_float3

Declaration
From
func setRotation(_ rotation: vector_float3, forTime time: NSTimeInterval)
To
func setRotation(_ rotation: vector_float3, forTime time: TimeInterval)

Declaration
From
func setScale(_ scale: vector_float3, forTime time: NSTimeInterval)
To
func setScale(_ scale: vector_float3, forTime time: TimeInterval)

Declaration
From
func setShear(_ shear: vector_float3, forTime time: NSTimeInterval)
To
func setShear(_ shear: vector_float3, forTime time: TimeInterval)

Declaration
From
func setTranslation(_ translation: vector_float3, forTime time: NSTimeInterval)
To
func setTranslation(_ translation: vector_float3, forTime time: TimeInterval)

Declaration
From
func shearAtTime(_ time: NSTimeInterval) -> vector_float3
To
func shear(atTime time: TimeInterval) -> vector_float3

Declaration
From
func translationAtTime(_ time: NSTimeInterval) -> vector_float3
To
func translation(atTime time: TimeInterval) -> vector_float3

Declaration
From
protocol MDLTransformComponent : MDLComponent {
    var matrix: matrix_float4x4 { get set }
    var minimumTime: NSTimeInterval { get }
    var maximumTime: NSTimeInterval { get }
    optional func setLocalTransform(_ transform: matrix_float4x4, forTime time: NSTimeInterval)
    optional func setLocalTransform(_ transform: matrix_float4x4)
    optional func localTransformAtTime(_ time: NSTimeInterval) -> matrix_float4x4
    optional static func globalTransformWithObject(_ object: MDLObject, atTime time: NSTimeInterval) -> matrix_float4x4
}
To
protocol MDLTransformComponent : MDLComponent {
    var matrix: matrix_float4x4 { get set }
    var resetsTransform: Bool { get set }
    var minimumTime: TimeInterval { get }
    var maximumTime: TimeInterval { get }
    var keyTimes: [NSNumber] { get }
    optional func setLocalTransform(_ transform: matrix_float4x4, forTime time: TimeInterval)
    optional func setLocalTransform(_ transform: matrix_float4x4)
    optional func localTransform(atTime time: TimeInterval) -> matrix_float4x4
    optional static func globalTransform(with object: MDLObject, atTime time: TimeInterval) -> matrix_float4x4
}

Declaration
From
optional static func globalTransformWithObject(_ object: MDLObject, atTime time: NSTimeInterval) -> matrix_float4x4
To
optional static func globalTransform(with object: MDLObject, atTime time: TimeInterval) -> matrix_float4x4

Declaration
From
optional func localTransformAtTime(_ time: NSTimeInterval) -> matrix_float4x4
To
optional func localTransform(atTime time: TimeInterval) -> matrix_float4x4

Declaration
From
var maximumTime: NSTimeInterval { get }
To
var maximumTime: TimeInterval { get }

Declaration
From
var minimumTime: NSTimeInterval { get }
To
var minimumTime: TimeInterval { get }

Declaration
From
optional func setLocalTransform(_ transform: matrix_float4x4, forTime time: NSTimeInterval)
To
optional func setLocalTransform(_ transform: matrix_float4x4, forTime time: TimeInterval)

Modified MDLURLTexture
Declaration
From
class MDLURLTexture : MDLTexture {
    init(URL URL: NSURL, name name: String?)
    @NSCopying var URL: NSURL
}
To
class MDLURLTexture : MDLTexture {
    init(url URL: URL, name name: String?)
    var url: URL
}

Declaration
From
init(URL URL: NSURL, name name: String?)
To
init(url URL: URL, name name: String?)

Declaration
From
@NSCopying var URL: NSURL
To
var url: URL

DeclarationProtocols
From
class MDLVertexAttribute : NSObject, NSCopying {
    init(name name: String, format format: MDLVertexFormat, offset offset: Int, bufferIndex bufferIndex: Int)
    var name: String
    var format: MDLVertexFormat
    var offset: Int
    var bufferIndex: Int
    var initializationValue: vector_float4
}
NSCopying
To
class MDLVertexAttribute : NSObject, NSCopying {
    init(name name: String, format format: MDLVertexFormat, offset offset: Int, bufferIndex bufferIndex: Int)
    var name: String
    var format: MDLVertexFormat
    var offset: Int
    var bufferIndex: Int
    var time: TimeInterval
    var initializationValue: vector_float4
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLVertexAttribute : CVarArg {
}
extension MDLVertexAttribute : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSCopying

DeclarationProtocols
From
class MDLVertexAttributeData : NSObject {
    var map: MDLMeshBufferMap
    var dataStart: UnsafeMutablePointer<Void>
    var stride: Int
    var format: MDLVertexFormat
}
--
To
class MDLVertexAttributeData : NSObject {
    var map: MDLMeshBufferMap
    var dataStart: UnsafeMutableRawPointer
    var stride: Int
    var format: MDLVertexFormat
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLVertexAttributeData : CVarArg {
}
extension MDLVertexAttributeData : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable

Declaration
From
var dataStart: UnsafeMutablePointer<Void>
To
var dataStart: UnsafeMutableRawPointer

DeclarationProtocols
From
class MDLVertexBufferLayout : NSObject, NSCopying {
    var stride: Int
}
NSCopying
To
class MDLVertexBufferLayout : NSObject, NSCopying {
    init(stride stride: Int)
    var stride: Int
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLVertexBufferLayout : CVarArg {
}
extension MDLVertexBufferLayout : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSCopying

DeclarationProtocols
From
class MDLVertexDescriptor : NSObject, NSCopying {
    init(vertexDescriptor vertexDescriptor: MDLVertexDescriptor)
    func attributeNamed(_ name: String) -> MDLVertexAttribute?
    func addOrReplaceAttribute(_ attribute: MDLVertexAttribute)
    var attributes: NSMutableArray
    var layouts: NSMutableArray
    func reset()
    func setPackedStrides()
    func setPackedOffsets()
}
NSCopying
To
class MDLVertexDescriptor : NSObject, NSCopying {
    init(vertexDescriptor vertexDescriptor: MDLVertexDescriptor)
    func attributeNamed(_ name: String) -> MDLVertexAttribute?
    func addOrReplaceAttribute(_ attribute: MDLVertexAttribute)
    func removeAttributeNamed(_ name: String)
    var attributes: NSMutableArray
    var layouts: NSMutableArray
    func reset()
    func setPackedStrides()
    func setPackedOffsets()
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension MDLVertexDescriptor : CVarArg {
}
extension MDLVertexDescriptor : Equatable, Hashable {
    var hashValue: Int { get }
}
CVarArg, Equatable, Hashable, NSCopying

Declaration
From
enum MDLVertexFormat : UInt {
    case Invalid
    case PackedBit
    case UCharBits
    case CharBits
    case UCharNormalizedBits
    case CharNormalizedBits
    case UShortBits
    case ShortBits
    case UShortNormalizedBits
    case ShortNormalizedBits
    case UIntBits
    case IntBits
    case HalfBits
    case FloatBits
    case UChar
    case UChar2
    case UChar3
    case UChar4
    case Char
    case Char2
    case Char3
    case Char4
    case UCharNormalized
    case UChar2Normalized
    case UChar3Normalized
    case UChar4Normalized
    case CharNormalized
    case Char2Normalized
    case Char3Normalized
    case Char4Normalized
    case UShort
    case UShort2
    case UShort3
    case UShort4
    case Short
    case Short2
    case Short3
    case Short4
    case UShortNormalized
    case UShort2Normalized
    case UShort3Normalized
    case UShort4Normalized
    case ShortNormalized
    case Short2Normalized
    case Short3Normalized
    case Short4Normalized
    case UInt
    case UInt2
    case UInt3
    case UInt4
    case Int
    case Int2
    case Int3
    case Int4
    case Half
    case Half2
    case Half3
    case Half4
    case Float
    case Float2
    case Float3
    case Float4
    case Int1010102Normalized
    case UInt1010102Normalized
}
To
enum MDLVertexFormat : UInt {
    case invalid
    case packedBit
    case uCharBits
    case charBits
    case uCharNormalizedBits
    case charNormalizedBits
    case uShortBits
    case shortBits
    case uShortNormalizedBits
    case shortNormalizedBits
    case uIntBits
    case intBits
    case halfBits
    case floatBits
    case uChar
    case uChar2
    case uChar3
    case uChar4
    case char
    case char2
    case char3
    case char4
    case uCharNormalized
    case uChar2Normalized
    case uChar3Normalized
    case uChar4Normalized
    case charNormalized
    case char2Normalized
    case char3Normalized
    case char4Normalized
    case uShort
    case uShort2
    case uShort3
    case uShort4
    case short
    case short2
    case short3
    case short4
    case uShortNormalized
    case uShort2Normalized
    case uShort3Normalized
    case uShort4Normalized
    case shortNormalized
    case short2Normalized
    case short3Normalized
    case short4Normalized
    case uInt
    case uInt2
    case uInt3
    case uInt4
    case int
    case int2
    case int3
    case int4
    case half
    case half2
    case half3
    case half4
    case float
    case float2
    case float3
    case float4
    case int1010102Normalized
    case uInt1010102Normalized
}

Declaration
From
case Char
To
case char

Declaration
From
case Char2
To
case char2

Declaration
From
case Char2Normalized
To
case char2Normalized

Declaration
From
case Char3
To
case char3

Declaration
From
case Char3Normalized
To
case char3Normalized

Declaration
From
case Char4
To
case char4

Declaration
From
case Char4Normalized
To
case char4Normalized

Declaration
From
case CharBits
To
case charBits

Declaration
From
case CharNormalized
To
case charNormalized

Declaration
From
case CharNormalizedBits
To
case charNormalizedBits

Declaration
From
case Float
To
case float

Declaration
From
case Float2
To
case float2

Declaration
From
case Float3
To
case float3

Declaration
From
case Float4
To
case float4

Declaration
From
case FloatBits
To
case floatBits

Declaration
From
case Half
To
case half

Declaration
From
case Half2
To
case half2

Declaration
From
case Half3
To
case half3

Declaration
From
case Half4
To
case half4

Declaration
From
case HalfBits
To
case halfBits

Declaration
From
case Int
To
case int

Declaration
From
case Int1010102Normalized
To
case int1010102Normalized

Declaration
From
case Int2
To
case int2

Declaration
From
case Int3
To
case int3

Declaration
From
case Int4
To
case int4

Declaration
From
case IntBits
To
case intBits

Declaration
From
case Invalid
To
case invalid

Declaration
From
case PackedBit
To
case packedBit

Declaration
From
case Short
To
case short

Declaration
From
case Short2
To
case short2

Declaration
From
case Short2Normalized
To
case short2Normalized

Declaration
From
case Short3
To
case short3

Declaration
From
case Short3Normalized
To
case short3Normalized

Declaration
From
case Short4
To
case short4

Declaration
From
case Short4Normalized
To
case short4Normalized

Declaration
From
case ShortBits
To
case shortBits

Declaration
From
case ShortNormalized
To
case shortNormalized

Declaration
From
case ShortNormalizedBits
To
case shortNormalizedBits

Declaration
From
case UChar
To
case uChar

Declaration
From
case UChar2
To
case uChar2

Declaration
From
case UChar2Normalized
To
case uChar2Normalized

Declaration
From
case UChar3
To
case uChar3

Declaration
From
case UChar3Normalized
To
case uChar3Normalized

Declaration
From
case UChar4
To
case uChar4

Declaration
From
case UChar4Normalized
To
case uChar4Normalized

Declaration
From
case UCharBits
To
case uCharBits

Declaration
From
case UCharNormalized
To
case uCharNormalized

Declaration
From
case UCharNormalizedBits
To
case uCharNormalizedBits

Declaration
From
case UInt
To
case uInt

Declaration
From
case UInt1010102Normalized
To
case uInt1010102Normalized

Declaration
From
case UInt2
To
case uInt2

Declaration
From
case UInt3
To
case uInt3

Declaration
From
case UInt4
To
case uInt4

Declaration
From
case UIntBits
To
case uIntBits

Declaration
From
case UShort
To
case uShort

Declaration
From
case UShort2
To
case uShort2

Declaration
From
case UShort2Normalized
To
case uShort2Normalized

Declaration
From
case UShort3
To
case uShort3

Declaration
From
case UShort3Normalized
To
case uShort3Normalized

Declaration
From
case UShort4
To
case uShort4

Declaration
From
case UShort4Normalized
To
case uShort4Normalized

Declaration
From
case UShortBits
To
case uShortBits

Declaration
From
case UShortNormalized
To
case uShortNormalized

Declaration
From
case UShortNormalizedBits
To
case uShortNormalizedBits

Modified MDLVoxelArray
DeclarationSuperclasses
From
class MDLVoxelArray : NSObject {
    init(asset asset: MDLAsset, divisions divisions: Int32, interiorShells interiorShells: Int32, exteriorShells exteriorShells: Int32, patchRadius patchRadius: Float)
    init(asset asset: MDLAsset, divisions divisions: Int32, interiorNBWidth interiorNBWidth: Float, exteriorNBWidth exteriorNBWidth: Float, patchRadius patchRadius: Float)
    init(data voxelData: NSData, boundingBox boundingBox: MDLAxisAlignedBoundingBox, voxelExtent voxelExtent: Float)
    func meshUsingAllocator(_ allocator: MDLMeshBufferAllocator?) -> MDLMesh?
    func voxelExistsAtIndex(_ index: MDLVoxelIndex, allowAnyX allowAnyX: Bool, allowAnyY allowAnyY: Bool, allowAnyZ allowAnyZ: Bool, allowAnyShell allowAnyShell: Bool) -> Bool
    func setVoxelAtIndex(_ index: MDLVoxelIndex)
    func setVoxelsForMesh(_ mesh: MDLMesh, divisions divisions: Int32, interiorShells interiorShells: Int32, exteriorShells exteriorShells: Int32, patchRadius patchRadius: Float)
    func setVoxelsForMesh(_ mesh: MDLMesh, divisions divisions: Int32, interiorNBWidth interiorNBWidth: Float, exteriorNBWidth exteriorNBWidth: Float, patchRadius patchRadius: Float)
    func voxelsWithinExtent(_ extent: MDLVoxelIndexExtent) -> NSData?
    func voxelIndices() -> NSData?
    func unionWithVoxels(_ voxels: MDLVoxelArray)
    func differenceWithVoxels(_ voxels: MDLVoxelArray)
    func intersectWithVoxels(_ voxels: MDLVoxelArray)
    func indexOfSpatialLocation(_ location: vector_float3) -> MDLVoxelIndex
    func spatialLocationOfIndex(_ index: MDLVoxelIndex) -> vector_float3
    func voxelBoundingBoxAtIndex(_ index: MDLVoxelIndex) -> MDLAxisAlignedBoundingBox
    var count: Int { get }
    var voxelIndexExtent: MDLVoxelIndexExtent { get }
    var boundingBox: MDLAxisAlignedBoundingBox { get }
}
NSObject
To
class MDLVoxelArray : MDLObject {
    init(asset asset: MDLAsset, divisions divisions: Int32, patchRadius patchRadius: Float)
    init(data voxelData: Data, boundingBox boundingBox: MDLAxisAlignedBoundingBox, voxelExtent voxelExtent: Float)
    init(asset asset: MDLAsset, divisions divisions: Int32, interiorShells interiorShells: Int32, exteriorShells exteriorShells: Int32, patchRadius patchRadius: Float)
    init(asset asset: MDLAsset, divisions divisions: Int32, interiorNBWidth interiorNBWidth: Float, exteriorNBWidth exteriorNBWidth: Float, patchRadius patchRadius: Float)
    var count: Int { get }
    var voxelIndexExtent: MDLVoxelIndexExtent { get }
    func voxelExists(atIndex index: MDLVoxelIndex, allowAnyX allowAnyX: Bool, allowAnyY allowAnyY: Bool, allowAnyZ allowAnyZ: Bool, allowAnyShell allowAnyShell: Bool) -> Bool
    func voxels(within extent: MDLVoxelIndexExtent) -> Data?
    func voxelIndices() -> Data?
    func setVoxelAtIndex(_ index: MDLVoxelIndex)
    func setVoxelsFor(_ mesh: MDLMesh, divisions divisions: Int32, patchRadius patchRadius: Float)
    func setVoxelsFor(_ mesh: MDLMesh, divisions divisions: Int32, interiorShells interiorShells: Int32, exteriorShells exteriorShells: Int32, patchRadius patchRadius: Float)
    func setVoxelsFor(_ mesh: MDLMesh, divisions divisions: Int32, interiorNBWidth interiorNBWidth: Float, exteriorNBWidth exteriorNBWidth: Float, patchRadius patchRadius: Float)
    func union(with voxels: MDLVoxelArray)
    func intersect(with voxels: MDLVoxelArray)
    func difference(with voxels: MDLVoxelArray)
    var boundingBox: MDLAxisAlignedBoundingBox { get }
    func index(ofSpatialLocation location: vector_float3) -> MDLVoxelIndex
    func spatialLocation(ofIndex index: MDLVoxelIndex) -> vector_float3
    func voxelBoundingBox(atIndex index: MDLVoxelIndex) -> MDLAxisAlignedBoundingBox
    func convertToSignedShellField()
    var isValidSignedShellField: Bool { get }
    var shellFieldInteriorThickness: Float
    var shellFieldExteriorThickness: Float
    func coarseMesh() -> MDLMesh?
    func coarseMesh(using allocator: MDLMeshBufferAllocator?) -> MDLMesh?
    func mesh(using allocator: MDLMeshBufferAllocator?) -> MDLMesh?
}
MDLObject

Declaration
From
func differenceWithVoxels(_ voxels: MDLVoxelArray)
To
func difference(with voxels: MDLVoxelArray)

Declaration
From
func indexOfSpatialLocation(_ location: vector_float3) -> MDLVoxelIndex
To
func index(ofSpatialLocation location: vector_float3) -> MDLVoxelIndex

Declaration
From
init(data voxelData: NSData, boundingBox boundingBox: MDLAxisAlignedBoundingBox, voxelExtent voxelExtent: Float)
To
init(data voxelData: Data, boundingBox boundingBox: MDLAxisAlignedBoundingBox, voxelExtent voxelExtent: Float)

Declaration
From
func intersectWithVoxels(_ voxels: MDLVoxelArray)
To
func intersect(with voxels: MDLVoxelArray)

Declaration
From
func meshUsingAllocator(_ allocator: MDLMeshBufferAllocator?) -> MDLMesh?
To
func mesh(using allocator: MDLMeshBufferAllocator?) -> MDLMesh?

Declaration
From
func spatialLocationOfIndex(_ index: MDLVoxelIndex) -> vector_float3
To
func spatialLocation(ofIndex index: MDLVoxelIndex) -> vector_float3

Declaration
From
func unionWithVoxels(_ voxels: MDLVoxelArray)
To
func union(with voxels: MDLVoxelArray)

Declaration
From
func voxelBoundingBoxAtIndex(_ index: MDLVoxelIndex) -> MDLAxisAlignedBoundingBox
To
func voxelBoundingBox(atIndex index: MDLVoxelIndex) -> MDLAxisAlignedBoundingBox

Declaration
From
func voxelExistsAtIndex(_ index: MDLVoxelIndex, allowAnyX allowAnyX: Bool, allowAnyY allowAnyY: Bool, allowAnyZ allowAnyZ: Bool, allowAnyShell allowAnyShell: Bool) -> Bool
To
func voxelExists(atIndex index: MDLVoxelIndex, allowAnyX allowAnyX: Bool, allowAnyY allowAnyY: Bool, allowAnyZ allowAnyZ: Bool, allowAnyShell allowAnyShell: Bool) -> Bool

Declaration
From
func voxelIndices() -> NSData?
To
func voxelIndices() -> Data?

Declaration
From
func voxelsWithinExtent(_ extent: MDLVoxelIndexExtent) -> NSData?
To
func voxels(within extent: MDLVoxelIndexExtent) -> Data?