forked from xamarin/xamarin-macios
-
Notifications
You must be signed in to change notification settings - Fork 1
ModelIO macOS xcode9 beta4
Sebastien Pouliot edited this page Jul 24, 2017
·
1 revision
#ModelIO.framework
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValue.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValue.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValue.h 2017-06-29 02:44:33.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValue.h 1969-12-31 19:00:00.000000000 -0500
@@ -1,171 +0,0 @@
-/*!
- @header MDLAnimatedValue.h
- @framework ModelIO
- @abstract Time sampled transformation of elements in 3d assets
- @copyright Copyright © 2015 Apple, Inc. All rights reserved.
- */
-
-
-#import <Foundation/Foundation.h>
-#import <simd/simd.h>
-#import <ModelIO/MDLTypes.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(NSUInteger, MDLAnimatedValueInterpolation) {
- MDLAnimatedValueInterpolationConstant,
- MDLAnimatedValueInterpolationLinear
-};
-
-typedef NS_ENUM(NSUInteger, MDLDataPrecision) {
- MDLDataPrecisionUndefined,
- MDLDataPrecisionFloat,
- MDLDataPrecisionDouble
-};
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedValue : NSObject<MDLNamed, NSCopying>
--(BOOL)isAnimated;
-@property (nonatomic, readonly) MDLDataPrecision precision;
-@property (nonatomic, readonly) NSUInteger timeSampleCount;
-@property (nonatomic, readonly) NSTimeInterval minimumTime;
-@property (nonatomic, readonly) NSTimeInterval maximumTime;
-@property (nonatomic) MDLAnimatedValueInterpolation interpolation;
-@property (nonatomic, copy) NSString *name;
-
-@property (nonatomic, readonly) NSArray<NSNumber *> *keyTimes;
-
--(void)clear;
--(NSUInteger)copyTimesInto:(NSTimeInterval *)timesArray maxCount:(NSUInteger)maxCount;
-@end
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedScalarArray : MDLAnimatedValue
-
-@property (nonatomic, readonly) NSUInteger elementsCount;
-
--(id)initWithName:(NSString*)name
- elementsCount:(NSUInteger)arrayElementCount;
-
--(void)setFloatArray:(const float *)array count:(NSUInteger)count atTime:(NSTimeInterval)time;
--(void)setDoubleArray:(const double *)array count:(NSUInteger)count atTime:(NSTimeInterval)time;
-
--(NSUInteger)copyFloatArrayInto:(float *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time;
--(NSUInteger)copyDoubleArrayInto:(double *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time;
-
--(void)resetWithFloatArray:(const float *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount;
--(void)resetWithDoubleArray:(const double *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount;
-
--(NSUInteger)copyFloatArrayInto:(float *)valuesArray maxCount:(NSUInteger)maxCount;
--(NSUInteger)copyDoubleArrayInto:(double *)valuesArray maxCount:(NSUInteger)maxCount;
-
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedScalar : MDLAnimatedValue
-
--(id)initWithName:(NSString*)name;
-
--(void)setFloat:(float)value atTime:(NSTimeInterval)time;
--(void)setDouble:(double)value atTime:(NSTimeInterval)time;
-
--(float)floatAtTime:(NSTimeInterval)time;
--(double)doubleAtTime:(NSTimeInterval)time;
-
--(void)resetWithFloatArray:(const float *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
--(void)resetWithDoubleArray:(const double *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
-
--(NSUInteger)copyFloatArrayInto:(float *)valuesArray maxCount:(NSUInteger)maxCount;
--(NSUInteger)copyDoubleArrayInto:(double *)valuesArray maxCount:(NSUInteger)maxCount;
-
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedVector2 : MDLAnimatedValue
-
--(id)initWithName:(NSString*)name;
-
--(void)setFloat2:(vector_float2)value atTime:(NSTimeInterval)time;
--(void)setDouble2:(vector_double2)value atTime:(NSTimeInterval)time;
-
--(vector_float2)float2AtTime:(NSTimeInterval)time;
--(vector_double2)double2AtTime:(NSTimeInterval)time;
-
--(void)resetWithFloat2Array:(const vector_float2 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
--(void)resetWithDouble2Array:(const vector_double2 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
-
--(NSUInteger)copyFloat2ArrayInto:(vector_float2 *)valuesArray maxCount:(NSUInteger)maxCount;
--(NSUInteger)copyDouble2ArrayInto:(vector_double2 *)valuesArray maxCount:(NSUInteger)maxCount;
-
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedVector3 : MDLAnimatedValue
-
--(id)initWithName:(NSString*)name;
-
--(void)setFloat3:(vector_float3)value atTime:(NSTimeInterval)time;
--(void)setDouble3:(vector_double3)value atTime:(NSTimeInterval)time;
-
--(vector_float3)float3AtTime:(NSTimeInterval)time;
--(vector_double3)double3AtTime:(NSTimeInterval)time;
-
--(void)resetWithFloat3Array:(const vector_float3 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
--(void)resetWithDouble3Array:(const vector_double3 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
-
--(NSUInteger)copyFloat3ArrayInto:(vector_float3 *)valuesArray maxCount:(NSUInteger)maxCount;
--(NSUInteger)copyDouble3ArrayInto:(vector_double3 *)valuesArray maxCount:(NSUInteger)maxCount;
-
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedVector4 : MDLAnimatedValue
-
--(id)initWithName:(NSString*)name;
-
--(void)setFloat4:(vector_float4)value atTime:(NSTimeInterval)time;
--(void)setDouble4:(vector_double4)value atTime:(NSTimeInterval)time;
-
--(vector_float4)float4AtTime:(NSTimeInterval)time;
--(vector_double4)double4AtTime:(NSTimeInterval)time;
-
--(void)resetWithFloat4Array:(const vector_float4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
--(void)resetWithDouble4Array:(const vector_double4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
-
--(NSUInteger)copyFloat4ArrayInto:(vector_float4 *)valuesArray maxCount:(NSUInteger)maxCount;
--(NSUInteger)copyDouble4ArrayInto:(vector_double4 *)valuesArray maxCount:(NSUInteger)maxCount;
-
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLAnimatedMatrix4x4 : MDLAnimatedValue
-
--(id)initWithName:(NSString*)name;
-
--(void)setFloat4x4:(matrix_float4x4)value atTime:(NSTimeInterval)time;
--(void)setDouble4x4:(matrix_double4x4)value atTime:(NSTimeInterval)time;
-
--(matrix_float4x4)float4x4AtTime:(NSTimeInterval)time;
--(matrix_double4x4)double4x4AtTime:(NSTimeInterval)time;
-
--(void)resetWithFloat4x4Array:(const matrix_float4x4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
--(void)resetWithDouble4x4Array:(const matrix_double4x4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count;
-
--(NSUInteger)copyFloat4x4ArrayInto:(matrix_float4x4 *)valuesArray maxCount:(NSUInteger)maxCount;
--(NSUInteger)copyDouble4x4ArrayInto:(matrix_double4x4 *)valuesArray maxCount:(NSUInteger)maxCount;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValueTypes.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValueTypes.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValueTypes.h 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimatedValueTypes.h 2017-07-14 05:33:24.000000000 -0400
@@ -0,0 +1,198 @@
+/*!
+ @header MDLAnimatedValueTypes.h
+ @framework ModelIO
+ @abstract Time sampled animated value types
+ @copyright Copyright © 2015 Apple, Inc. All rights reserved.
+ */
+
+
+#import <Foundation/Foundation.h>
+#import <ModelIO/MDLTypes.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSUInteger, MDLAnimatedValueInterpolation) {
+ MDLAnimatedValueInterpolationConstant,
+ MDLAnimatedValueInterpolationLinear
+};
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedValue : NSObject<NSCopying>
+-(BOOL)isAnimated;
+@property (nonatomic, readonly) MDLDataPrecision precision;
+@property (nonatomic, readonly) NSUInteger timeSampleCount;
+@property (nonatomic, readonly) NSTimeInterval minimumTime;
+@property (nonatomic, readonly) NSTimeInterval maximumTime;
+@property (nonatomic) MDLAnimatedValueInterpolation interpolation;
+
+@property (nonatomic, readonly) NSArray<NSNumber *> *keyTimes;
+
+-(void)clear;
+-(NSUInteger)getTimes:(NSTimeInterval *)timesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+@end
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedScalarArray : MDLAnimatedValue
+
+@property (nonatomic, readonly) NSUInteger elementCount;
+
+-(id)initWithElementCount:(NSUInteger)arrayElementCount;
+
+-(void)setFloatArray:(const float *)array count:(NSUInteger)count atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+-(void)setDoubleArray:(const double *)array count:(NSUInteger)count atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloatArray:(float *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDoubleArray:(double *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+
+-(void)resetWithFloatArray:(const float *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount NS_REFINED_FOR_SWIFT;
+-(void)resetWithDoubleArray:(const double *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloatArray:(float *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDoubleArray:(double *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedVector3Array : MDLAnimatedValue
+
+@property (nonatomic, readonly) NSUInteger elementCount;
+
+-(id)initWithElementCount:(NSUInteger)arrayElementCount;
+
+-(void)setFloat3Array:(const vector_float3 *)array count:(NSUInteger)count atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+-(void)setDouble3Array:(const vector_double3 *)array count:(NSUInteger)count atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat3Array:(vector_float3 *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble3Array:(vector_double3 *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+
+-(void)resetWithFloat3Array:(const vector_float3 *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount NS_REFINED_FOR_SWIFT;
+-(void)resetWithDouble3Array:(const vector_double3 *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat3Array:(vector_float3 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble3Array:(vector_double3 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedQuaternionArray : MDLAnimatedValue
+
+@property (nonatomic, readonly) NSUInteger elementCount;
+
+-(id)initWithElementCount:(NSUInteger)arrayElementCount;
+
+-(void)setFloatQuaternionArray:(const simd_quatf *)array count:(NSUInteger)count atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+-(void)setDoubleQuaternionArray:(const simd_quatd *)array count:(NSUInteger)count atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloatQuaternionArray:(simd_quatf *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDoubleQuaternionArray:(simd_quatd *)array maxCount:(NSUInteger)maxCount atTime:(NSTimeInterval)time NS_REFINED_FOR_SWIFT;
+
+-(void)resetWithFloatQuaternionArray:(const simd_quatf *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount NS_REFINED_FOR_SWIFT;
+-(void)resetWithDoubleQuaternionArray:(const simd_quatd *)valuesArray count:(NSUInteger)valuesCount atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)timesCount NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloatQuaternionArray:(simd_quatf *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDoubleQuaternionArray:(simd_quatd *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedScalar : MDLAnimatedValue
+
+-(void)setFloat:(float)value atTime:(NSTimeInterval)time;
+-(void)setDouble:(double)value atTime:(NSTimeInterval)time;
+
+-(float)floatAtTime:(NSTimeInterval)time;
+-(double)doubleAtTime:(NSTimeInterval)time;
+
+-(void)resetWithFloatArray:(const float *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+-(void)resetWithDoubleArray:(const double *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloatArray:(float *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDoubleArray:(double *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedVector2 : MDLAnimatedValue
+
+-(void)setFloat2:(vector_float2)value atTime:(NSTimeInterval)time;
+-(void)setDouble2:(vector_double2)value atTime:(NSTimeInterval)time;
+
+-(vector_float2)float2AtTime:(NSTimeInterval)time;
+-(vector_double2)double2AtTime:(NSTimeInterval)time;
+
+-(void)resetWithFloat2Array:(const vector_float2 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+-(void)resetWithDouble2Array:(const vector_double2 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat2Array:(vector_float2 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble2Array:(vector_double2 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedVector3 : MDLAnimatedValue
+
+-(void)setFloat3:(vector_float3)value atTime:(NSTimeInterval)time;
+-(void)setDouble3:(vector_double3)value atTime:(NSTimeInterval)time;
+
+-(vector_float3)float3AtTime:(NSTimeInterval)time;
+-(vector_double3)double3AtTime:(NSTimeInterval)time;
+
+-(void)resetWithFloat3Array:(const vector_float3 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+-(void)resetWithDouble3Array:(const vector_double3 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat3Array:(vector_float3 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble3Array:(vector_double3 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedVector4 : MDLAnimatedValue
+
+-(void)setFloat4:(vector_float4)value atTime:(NSTimeInterval)time;
+-(void)setDouble4:(vector_double4)value atTime:(NSTimeInterval)time;
+
+-(vector_float4)float4AtTime:(NSTimeInterval)time;
+-(vector_double4)double4AtTime:(NSTimeInterval)time;
+
+-(void)resetWithFloat4Array:(const vector_float4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+-(void)resetWithDouble4Array:(const vector_double4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat4Array:(vector_float4 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble4Array:(vector_double4 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimatedMatrix4x4 : MDLAnimatedValue
+
+-(void)setFloat4x4:(matrix_float4x4)value atTime:(NSTimeInterval)time;
+-(void)setDouble4x4:(matrix_double4x4)value atTime:(NSTimeInterval)time;
+
+-(matrix_float4x4)float4x4AtTime:(NSTimeInterval)time;
+-(matrix_double4x4)double4x4AtTime:(NSTimeInterval)time;
+
+-(void)resetWithFloat4x4Array:(const matrix_float4x4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+-(void)resetWithDouble4x4Array:(const matrix_double4x4 *)valuesArray atTimes:(const NSTimeInterval *)timesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat4x4Array:(matrix_float4x4 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble4x4Array:(matrix_double4x4 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimation.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimation.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimation.h 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAnimation.h 2017-07-13 16:39:12.000000000 -0400
@@ -0,0 +1,59 @@
+/*!
+ @header MDLAnimation.h
+ @framework ModelIO
+ @abstract Support for time sampled animation of skeletal meshes
+ @copyright Copyright © 2016 Apple, Inc. All rights reserved.
+ */
+
+#import <Foundation/Foundation.h>
+#import <ModelIO/MDLValueTypes.h>
+#import <ModelIO/MDLAnimatedValueTypes.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLSkeleton : MDLObject<NSCopying>
+
+@property (nonatomic, readonly) NSArray<NSString *> *jointPaths;
+@property (nonatomic, readonly) MDLMatrix4x4Array *jointBindTransforms;
+
+-(instancetype) initWithName:(NSString *)name
+ jointPaths:(NSArray<NSString *> *)jointPaths;
+@end
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@protocol MDLJointAnimation
+@end
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLPackedJointAnimation : MDLObject<NSCopying, MDLJointAnimation>
+@property (nonatomic, readonly) NSArray<NSString *> *jointPaths;
+
+@property (nonatomic, readonly) MDLAnimatedVector3Array *translations;
+@property (nonatomic, readonly) MDLAnimatedQuaternionArray *rotations;
+@property (nonatomic, readonly) MDLAnimatedVector3Array *scales;
+
+-(instancetype) initWithName:(NSString *)name
+ jointPaths:(NSArray<NSString *> *)jointPaths;
+@end
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLAnimationBindComponent : NSObject<MDLNamed, NSCopying, MDLComponent>
+
+@property (nonatomic, nullable, retain) MDLSkeleton* skeleton;
+@property (nonatomic, nullable, retain) id<MDLJointAnimation> jointAnimation;
+
+@property (nonatomic) matrix_float4x4 geometryBindTransform;
+
+-(instancetype) initWithName:(NSString *)name
+ skeleton:(MDLSkeleton *)skeleton
+ jointAnimation:(id<MDLJointAnimation>)jointAnimation
+ geometryBindTransform:(matrix_float4x4)geometryBindTransform;
+@end
+
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAsset.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAsset.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAsset.h 2017-06-29 01:27:28.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLAsset.h 2017-07-14 05:33:24.000000000 -0400
@@ -10,6 +10,7 @@
#import <ModelIO/MDLObject.h>
#import <ModelIO/MDLVertexDescriptor.h>
#import <ModelIO/MDLMeshBuffer.h>
+#import <ModelIO/MDLAnimation.h>
#import <Foundation/NSURL.h>
#import <simd/simd.h>
@@ -164,42 +165,6 @@
+ (BOOL)canExportFileExtension:(NSString *)extension;
/*!
- @property components
- @abstract Allows applications to introspect the components on the asset.
- */
-@property (nonatomic, readonly, copy) NSArray<id<MDLComponent>> *components;
-
-/*!
- @method setComponent:forProtocol:
- @abstract Extensible component support that allows user of ModelIO to customize
- MDLAssets to fit their format and workflow.
- */
-- (void)setComponent:(id<MDLComponent>)component forProtocol:(Protocol *)protocol;
-
-/*!
- @method componentConformingToProtocol:
- @abstract Extensible component support that allows user of ModelIO to customize
- MDLAssets to fit their format and workflow.
- */
-- (nullable id<MDLComponent>)componentConformingToProtocol:(Protocol *)protocol;
-
-/*!
- @method objectForKeyedSubscript:
- @abstract Allows shorthand [key] syntax for componentConformingToProtocol:.
- @param key The protocol that the component conforms to.
- @see componentConformingToProtocol:
- */
-- (nullable id<MDLComponent>)objectForKeyedSubscript:(Protocol *)key;
-
-/*!
- @method setObject:forKeyedSubscript:
- @abstract Allows shorthand [key] syntax for setComponent:forProtocol:.
- @param key The protocol that the component conforms to.
- @see setComponent:forProtocol:
- */
-- (void)setObject:(nullable id<MDLComponent>)obj forKeyedSubscript:(Protocol *)key;
-
-/*!
@method childObjectsOfClass:
@abstract Inspects an asset's hierarchy for objects of the specified class type
@return returns an NSArray of all objects in the asset matching the requested class
@@ -328,11 +293,16 @@
/*!
@property masters
@abstract Master objects that can be instanced into the asset's object hierarchy
-
- @see MDLObjectContainerComponent
+ @discussion @see MDLObjectContainerComponent
*/
@property (nonatomic, retain) id<MDLObjectContainerComponent> masters;
+/*!
+ @property animations
+ @abstract Animations that can be bound to MDLObjects (@see MDLAnimationBindComponent)
+ @discussion @see MDLObjectContainerComponent
+ */
+@property (nonatomic, retain) id<MDLObjectContainerComponent> animations;
@end
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMesh.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMesh.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMesh.h 2017-06-29 02:44:33.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMesh.h 2017-07-14 04:58:47.000000000 -0400
@@ -8,12 +8,9 @@
#import <ModelIO/MDLTypes.h>
#import <ModelIO/MDLLight.h>
#import <ModelIO/MDLTransform.h>
-#import <ModelIO/MDLPrimitive.h>
#import <ModelIO/MDLSubmesh.h>
#import <ModelIO/MDLMeshBuffer.h>
#import <ModelIO/MDLVertexDescriptor.h>
-#import <ModelIO/MDLSkinDeformer.h>
-#import <ModelIO/MDLMorphDeformer.h>
NS_ASSUME_NONNULL_BEGIN
@@ -144,8 +141,7 @@
@discussion This value is valid only if the mesh was initialized
with an explicit vertex count
*/
-@property (nonatomic, readwrite) NSUInteger vertexCount
- NS_DEPRECATED(10.11,10.13,9.0,11.0);
+@property (nonatomic, readwrite) NSUInteger vertexCount;
/*!
@property vertexBuffers
@@ -224,7 +220,7 @@
/*!
@method addNormalsWithAttributeNamed:creaseThreshold:
@abstract Calculate and add vertex normal data
- the first parameter attributeName is the attribute name of vertex normal attribute. If nil, vertex normals
+ @param attributeName Name is the attribute name of vertex normal attribute. If nil, vertex normals
will be added with the MDLVertexAttributeNormal name string
@param creaseThreshold Threshold of the dot product between the 2 triangles after which
their face normal will be smoothed out. Therefore, a threshold of 0 will
@@ -242,9 +238,9 @@
/*!
@method addTangentBasisForTextureCoordinateAttributeNamed:tangentAttributeNamed:bitangentAttributeNamed
@abstract Create a shader basis where the tangent and bitangent span the uv -> object space transform
- the first parameter textureCoordinateAttributeNamed texture coordinates to use in calculations
- the second parameter tangentAttributeNamed is the name of vertex tangent attribute.
- the third parameter bitangentAttributeNamed is the name of vertex bitangent attribute.
+ @param textureCoordinateAttributeName Name of texture coordinates to use in calculations
+ @param tangentAttributeName Name of vertex tangent attribute.
+ @param bitangentAttributeName Name of vertex bitangent attribute.
@discussion Uses the attribute named MDLVertexAttributePosition and
textureCoordinateAttributeName to calculate tangent and bitangent
attributes. The mesh's vertexDescriptor will be updated to reflect
@@ -483,7 +479,7 @@
*/
- (instancetype)initCapsuleWithExtent:(vector_float3)extent
cylinderSegments:(vector_uint2)segments
- hemisphereSegments:(NSUInteger)hemisphereSegments
+ hemisphereSegments:(int)hemisphereSegments
inwardNormals:(BOOL)inwardNormals
geometryType:(MDLGeometryType)geometryType
allocator:(nullable id<MDLMeshBufferAllocator>)allocator;
@@ -549,24 +545,6 @@
allocator:(nullable id<MDLMeshBufferAllocator>)allocator;
/*!
- @method initMeshByPrimitive:segments:inwardNormals:geometryType:allocator
- @abstract Factory method for generating a mesh from primitive
- @return MDLMesh primitive mesh with desired attributes
- @param segments Number of segements in the X, Y and Z dimensions
- @param geometryType Can be MDLGeometryTypeLines, MDLGeometryTypeQuads, or MDLGeometryTypeTriangles
- @param inwardNormals Generated normals will face towards the center of the mesh
- @param allocator A mesh buffer allocator used to allocate memory to back buffers
- for the returned mesh. If nil, a default allocator will be used
- @discussion Creates an mesh with center at (0, 0, 0). The primitive's radius, height,
- length will be used as extent for X Y Z dimension accordingly.
- */
-- (instancetype)initMeshWithPrimitive:(MDLPrimitive*)primitive
- segments:(vector_uint3)segments
- inwardNormals:(BOOL)inwardNormals
- geometryType:(MDLGeometryType)geometryType
- allocator:(nullable id<MDLMeshBufferAllocator>)allocator;
-
-/*!
@method initMeshBySubdividingMesh:submeshIndex:subdivisionLevels:allocator
@abstract Factory method that generates a subdivided mesh from a source mesh
@param mesh Mesh from which to generate a subdivided mesh
@@ -631,11 +609,6 @@
+ (instancetype)newIcosahedronWithRadius:(float)radius
inwardNormals:(BOOL)inwardNormals
allocator:(nullable id<MDLMeshBufferAllocator>)allocator;
-+ (nullable instancetype)newMeshWithPrimitive:(MDLPrimitive*)primitive
- segments:(vector_uint3)segments
- inwardNormals:(BOOL)inwardNormals
- geometryType:(MDLGeometryType)geometryType
- allocator:(nullable id<MDLMeshBufferAllocator>)allocator;
+ (nullable instancetype)newSubdividedMesh:(MDLMesh*)mesh
submeshIndex:(NSUInteger)submeshIndex
subdivisionLevels:(NSUInteger)subdivisionLevels;
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMorphDeformer.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMorphDeformer.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMorphDeformer.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLMorphDeformer.h 1969-12-31 19:00:00.000000000 -0500
@@ -1,72 +0,0 @@
-/*!
- @header MDLSkinDeformer.h
- @framework ModelIO
- @abstract Structures for describing mesh blend shapes
- @copyright Copyright © 2016 Apple, Inc. All rights reserved.
- */
-
-#pragma once
-
-#import <ModelIO/MDLTransform.h>
-#import <ModelIO/MDLAnimatedValue.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class MDLMesh;
-
-/*!
- @protocol MDLMorphDeformerComponent
- @abstract A blend shape deformer stores an array of shapeSets that contain the target shape(s),
- and an array of blend weights that control the final shape
- @discussion A blend shape deformer applies the difference between target shape and base geometry,
- scaled by the shapeSetWeight, on top of the base geometry.
- */
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@protocol MDLMorphDeformerComponent <MDLComponent>
-@required
-
-// these are target shapes to blend in-between
-@property (nonatomic, readonly) NSArray<MDLMesh *> *targetShapes;
-
-// the weights at which the (in-between) target shapes are placed (0..1).
-// Can be NULL if every shape set contains only one target shape.
-@property (nonatomic, readonly) NSArray<NSNumber *> *shapeSetTargetWeights;
-
-// the weights at which the target shapes are placed (0..1)
-// Can be NULL if every shape set contains only one target shape.
-@property (nonatomic, readonly) NSArray<NSNumber *> *shapeSetTargetCounts;
-
-// the effect of each target shape set can be controlled by a weight in the range 0..1. Animated property
-@property (nonatomic, readonly) MDLAnimatedScalarArray *weights;
-
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLMorphDeformer : NSObject<NSCopying, MDLMorphDeformerComponent>
-
-@property (nonatomic, readonly) NSArray<MDLMesh *> *targetShapes;
-
-@property (nonatomic, readonly) MDLAnimatedScalarArray *weights;
-
--(instancetype) initWithTargetShapes:(NSArray<MDLMesh *> *)targetShapes
- shapeSetTargetWeights:(NSArray<NSNumber *> * _Nullable)shapeSetTargetWeights
- shapeSetTargetCounts:(NSArray<NSNumber *> * _Nullable)targetCountsCount;
-
--(instancetype) initWithTargetShapes:(NSArray<MDLMesh *> *)targetShapes
- shapeSetTargetWeights:(const float * _Nullable)shapeSetTargetWeights
- count:(NSUInteger)targetWeightsCount
- shapeSetTargetCounts:(const unsigned int * _Nullable)targetCountsCount
- count:(NSUInteger)targetCountsCount;
-
--(NSUInteger)copyShapeSetTargetWeightsInto:(float *)array
- maxCount:(NSUInteger)maxCount;
-
--(NSUInteger)copyShapeSetTargetCountsInto:(unsigned int *)array
- maxCount:(NSUInteger)maxCount;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLObject.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLObject.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLObject.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLObject.h 2017-07-13 16:39:12.000000000 -0400
@@ -8,12 +8,10 @@
#import <ModelIO/MDLTypes.h>
#import <ModelIO/MDLTransform.h>
-#import <ModelIO/MDLPrimitive.h>
NS_ASSUME_NONNULL_BEGIN
@protocol MDLTransformComponent;
-@protocol MDLPrimitiveComponent;
/*!
@class MDLObject
@abstract Base class for object in a ModelIO asset hierarchy
@@ -115,15 +113,6 @@
*/
@property (nonatomic, nullable, retain) id<MDLTransformComponent> transform;
-/*!
- @property primitive
- @abstract Short hand property for the MDLPrimitiveComponent.
- @discussion The default value is nil
-
- @see MDLPrimitiveComponent
- */
-@property (nonatomic, nullable, retain) id<MDLPrimitiveComponent> primitive;
-
/*!
@property children
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLPrimitive.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLPrimitive.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLPrimitive.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLPrimitive.h 1969-12-31 19:00:00.000000000 -0500
@@ -1,59 +0,0 @@
-/*!
- @header MDLPrimitive.h
- @framework ModelIO
- @abstract Primitives for Model IO
- @copyright Copyright © 2016 Apple, Inc. All rights reserved.
- */
-
-#import <ModelIO/MDLObject.h>
-#import <ModelIO/MDLTypes.h>
-#import <Foundation/Foundation.h>
-#include <simd/simd.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class MDLObject;
-
-typedef NS_ENUM (NSUInteger, MDLPrimitiveType) {
- MDLPrimitiveTypeCube,
- MDLPrimitiveTypeSphere,
- MDLPrimitiveTypeCone,
- MDLPrimitiveTypeCapsule,
- MDLPrimitiveTypeCylinder,
- MDLPrimitiveTypeNone
-};
-
-/** MDLPrimitiveComponent
- @summary a container for different types of primitves supported by 3D softwares
- @discussion current primitives supports usd primitives
- */
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@protocol MDLPrimitiveComponent <MDLComponent>
-@required
-@property (nonatomic, readwrite) MDLPrimitiveType primitiveType;
-@end
-/**
- Concrete implementation of <MDLPrimitiveComponent>.
- @summary initialization for the MDLPrimitve
- */
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLPrimitive : NSObject <NSCopying, MDLPrimitiveComponent>
-
-
-
-- (instancetype)initWithPrimitiveType:(MDLPrimitiveType) primitiveType NS_DESIGNATED_INITIALIZER;
-- (instancetype)initWithPrimitiveType:(MDLPrimitiveType) primitiveType
- radius:(float)radius
- height:(float)height
- length:(float)length;
-@property (nonatomic, readwrite) float radius;
-@property (nonatomic, readwrite) float height;
-@property (nonatomic, readwrite) float length;
-
-@end
-
-NS_ASSUME_NONNULL_END
-
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSkinDeformer.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSkinDeformer.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSkinDeformer.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSkinDeformer.h 1969-12-31 19:00:00.000000000 -0500
@@ -1,55 +0,0 @@
-/*!
- @header MDLSkinDeformer.h
- @framework ModelIO
- @abstract Structure for describing mesh skinning
- @copyright Copyright © 2016 Apple, Inc. All rights reserved.
- */
-
-#pragma once
-
-#import <Foundation/Foundation.h>
-#import <ModelIO/MDLTransform.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class MDLMesh;
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@protocol MDLSkinDeformerComponent <MDLComponent>
-@required
-
-// Path names of each joint the target mesh is bound to by the skin deformer
-@property (nonatomic, readonly) NSArray<NSString *> *jointPaths;
-
- // Type: NSData of matrix_float4x4
-@property (nonatomic, readonly) NSData *jointBindTransforms;
-
-// World space transform of the target mesh bound by the skin deformer
-@property (nonatomic, readonly) matrix_float4x4 meshBindTransform;
-
--(NSUInteger) copyJointBindTransformsInto:(matrix_float4x4 *)jointBindTransformsArray
- maxCount:(NSUInteger)maxCount;
-@end
-
-
-API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
-MDL_EXPORT
-@interface MDLSkinDeformer : NSObject<NSCopying, MDLSkinDeformerComponent>
-
-@property (nonatomic, readonly) NSArray<NSString *> *jointPaths;
-@property (nonatomic, readonly) NSData *jointBindTransforms;
-@property (nonatomic, readonly) matrix_float4x4 meshBindTransform;
-
--(instancetype) initWithJointPaths:(NSArray<NSString *> *)jointPaths
- jointBindTransforms:(const matrix_float4x4 *)jointBindTransforms
- count:(NSUInteger)jointBindTransformsCount
- meshBindTransform:(matrix_float4x4)meshBindTransform;
-
--(NSUInteger) copyJointBindTransformsInto:(matrix_float4x4 *)jointBindTransformsArray
- maxCount:(NSUInteger)maxCount;
-@end
-
-
-NS_ASSUME_NONNULL_END
-
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSubmesh.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSubmesh.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSubmesh.h 2017-06-29 01:11:56.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLSubmesh.h 2017-07-13 16:39:12.000000000 -0400
@@ -151,30 +151,6 @@
topology:(nullable MDLSubmeshTopology *)topology;
/*!
- @method initWithIndexBuffer:indexCount:indexType:faceIndexing:faceTopologyBuffer:geometryType:material:
- @abstract Initialize submesh with all data necessary to make properties valid
-
- @discussion The geometry type will typically be MDLGeometryTypeVariableTopology,
- if other types are used the faceTopologyBuffer contents should reflect that.
- faceIndexing may be nil. If it is not nil, it describes per-vertex index packing.
- per-vertex index packing allows different indices per vertex attribute. As an
- example, a triangle may have three different positions, but one normal shared on
- all corners. If positions and normals are in vertex buffers 0 and 2 respectively,
- then faceIndexing would contain @[0, 2]. If buffer zero contains three positions, and
- buffer 2 contains one normal, the index buffer might contain [0,0, 1,0, 2,0].
- At the moment, only variable topology and associated topology buffer are supported
- in this way.
- */
-- (instancetype)initWithName:(NSString *)name
- indexBuffer:(id<MDLMeshBuffer>)indexBuffer
- indexCount:(NSUInteger)indexCount
- indexType:(MDLIndexBitDepth)indexType
- faceIndexing:(nullable NSArray<NSNumber*>*)faceIndexing
- geometryType:(MDLGeometryType)geometryType
- material:(nullable MDLMaterial *)material
- topology:(nullable MDLSubmeshTopology *)topology;
-
-/*!
@method initWithMDLSubmesh:indexType:geometryType:
@abstract Initialize submesh using another submesh as input.
@discussion the resulting submesh will have a new index type if necessary.
@@ -231,15 +207,6 @@
@property (nonatomic, retain, nullable) MDLSubmeshTopology *topology;
/*!
- @property faceIndexing
- @abstract If face vertices have independently indexed attributes, this property is not nil
-
- @discussion see discussion for initWithIndexBuffer:indexCount:indexType:faceIndexing:faceTopologyBuffer:geometryType:material:
-*/
-
-@property (nonatomic, retain, nullable) NSArray<NSNumber*> *faceIndexing;
-
-/*!
@property name
@abstract Identifying name for this object
*/
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTransformStack.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTransformStack.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTransformStack.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTransformStack.h 2017-07-13 16:39:12.000000000 -0400
@@ -10,7 +10,7 @@
#import <simd/simd.h>
#import <ModelIO/MDLTypes.h>
#import <ModelIO/MDLTransform.h>
-#import <ModelIO/MDLAnimatedValue.h>
+#import <ModelIO/MDLAnimatedValueTypes.h>
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSUInteger, MDLTransformOpRotationOrder) {
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTypes.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTypes.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTypes.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLTypes.h 2017-07-13 16:39:12.000000000 -0400
@@ -54,6 +54,12 @@
MDLProbePlacementIrradianceDistribution
};
+typedef NS_ENUM(NSUInteger, MDLDataPrecision) {
+ MDLDataPrecisionUndefined,
+ MDLDataPrecisionFloat,
+ MDLDataPrecisionDouble
+};
+
NS_CLASS_AVAILABLE(10_11, 9_0)
MDL_EXPORT
@protocol MDLNamed
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLValueTypes.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLValueTypes.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLValueTypes.h 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLValueTypes.h 2017-07-13 16:39:12.000000000 -0400
@@ -0,0 +1,32 @@
+/*!
+ @header MDLValueTypes.h
+ @framework ModelIO
+ @abstract SIMD array value types
+ @copyright Copyright © 2015 Apple, Inc. All rights reserved.
+ */
+
+
+#import <Foundation/Foundation.h>
+#import <ModelIO/MDLTypes.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
+MDL_EXPORT
+@interface MDLMatrix4x4Array : NSObject<NSCopying>
+
+@property (nonatomic, readonly) NSUInteger elementCount;
+
+@property (nonatomic, readonly) MDLDataPrecision precision;
+
+-(void)clear;
+-(instancetype)initWithElementCount:(NSUInteger)arrayElementCount;
+
+-(void)setFloat4x4Array:(const matrix_float4x4 *)valuesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+-(void)setDouble4x4Array:(const matrix_double4x4 *)valuesArray count:(NSUInteger)count NS_REFINED_FOR_SWIFT;
+
+-(NSUInteger)getFloat4x4Array:(matrix_float4x4 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+-(NSUInteger)getDouble4x4Array:(matrix_double4x4 *)valuesArray maxCount:(NSUInteger)maxCount NS_REFINED_FOR_SWIFT;
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLVertexDescriptor.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLVertexDescriptor.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLVertexDescriptor.h 2017-06-29 01:27:28.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/MDLVertexDescriptor.h 2017-07-14 04:58:47.000000000 -0400
@@ -176,11 +176,11 @@
/*!
@property stride
@abstract stride in bytes of each vertex element in the buffer.
- - If you store multiple attributes interleaved in the vertex
- buffer, the stride will be the sum of sizes of each attribute (and any padding).
- - If you store multiple attributes non-interleaved (back to back),
- the stride will be the size of an attribute (and all attributes are
- required to have the same size).
+ @discussion - If you store multiple attributes interleaved in the vertex
+ buffer, the stride will be the sum of sizes of each attribute (and any padding).
+ - If you store multiple attributes non-interleaved (back to back),
+ the stride will be the size of an attribute (and all attributes are
+ required to have the same size).
*/
@property (nonatomic, readwrite) NSUInteger stride;
@end
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.apinotes /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.apinotes
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.apinotes 1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.apinotes 2017-07-13 16:39:12.000000000 -0400
@@ -0,0 +1,43 @@
+---
+Name: ModelIO
+Classes:
+- Name: MDLAnimatedScalar
+ Methods:
+ - Selector: 'floatAtTime:'
+ MethodKind: Instance
+ SwiftName: 'floatValue(atTime:)'
+ - Selector: 'doubleAtTime:'
+ MethodKind: Instance
+ SwiftName: 'doubleValue(atTime:)'
+- Name: MDLAnimatedVector2
+ Methods:
+ - Selector: 'float2AtTime:'
+ MethodKind: Instance
+ SwiftName: 'float2Value(atTime:)'
+ - Selector: 'double2AtTime:'
+ MethodKind: Instance
+ SwiftName: 'double2Value(atTime:)'
+- Name: MDLAnimatedVector3
+ Methods:
+ - Selector: 'float3AtTime:'
+ MethodKind: Instance
+ SwiftName: 'float3Value(atTime:)'
+ - Selector: 'double3AtTime:'
+ MethodKind: Instance
+ SwiftName: 'double3Value(atTime:)'
+- Name: MDLAnimatedVector4
+ Methods:
+ - Selector: 'float4AtTime:'
+ MethodKind: Instance
+ SwiftName: 'float4Value(atTime:)'
+ - Selector: 'double4AtTime:'
+ MethodKind: Instance
+ SwiftName: 'double4Value(atTime:)'
+- Name: MDLAnimatedMatrix4x4
+ Methods:
+ - Selector: 'float4x4AtTime:'
+ MethodKind: Instance
+ SwiftName: 'float4x4Value(atTime:)'
+ - Selector: 'double4x4AtTime:'
+ MethodKind: Instance
+ SwiftName: 'double4x4Value(atTime:)'
diff -ruN /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.h /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.h
--- /Applications/Xcode9-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.h 2017-06-29 21:17:43.000000000 -0400
+++ /Applications/Xcode9-beta4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/ModelIO.framework/Headers/ModelIO.h 2017-07-13 16:39:12.000000000 -0400
@@ -9,19 +9,17 @@
#import <ModelIO/MDLAsset.h>
#import <ModelIO/MDLAssetResolver.h>
-#import <ModelIO/MDLMorphDeformer.h>
#import <ModelIO/MDLCamera.h>
#import <ModelIO/MDLLight.h>
#import <ModelIO/MDLMaterial.h>
#import <ModelIO/MDLMesh.h>
#import <ModelIO/MDLMeshBuffer.h>
#import <ModelIO/MDLObject.h>
-#import <ModelIO/MDLSkinDeformer.h>
#import <ModelIO/MDLSubmesh.h>
#import <ModelIO/MDLTexture.h>
#import <ModelIO/MDLTransform.h>
#import <ModelIO/MDLTransformStack.h>
-#import <ModelIO/MDLPrimitive.h>
#import <ModelIO/MDLTypes.h>
#import <ModelIO/MDLVertexDescriptor.h>
#import <ModelIO/MDLVoxelArray.h>
+#import <ModelIO/MDLAnimation.h>