API Differences in Metal in macOS 15.0

It's more difficult than it used to be to find what changed in Apple SDKs. This page is automatically generated and shows what is new in Metal in the macOS 15.0 SDK.

Table of Contents

Functions & Methods

MTLCommandBuffer
public func useResidencySets(_ residencySets: [any Metal.MTLResidencySet])
MTLCommandQueue
public func addResidencySets(_ residencySets: [any Metal.MTLResidencySet])
MTLCommandQueue
public func removeResidencySets(_ residencySets: [any Metal.MTLResidencySet])
MTLResidencySet
public func addAllocations(_ allocations: [any Metal.MTLAllocation])
MTLResidencySet
public func removeAllocations(_ allocations: [any Metal.MTLAllocation])
MTLBinaryArchive
- (BOOL)addMeshRenderPipelineFunctionsWithDescriptor:(nonnull MTLMeshRenderPipelineDescriptor *)descriptor error:(NSError * _Nullable * _Nullable)error;
MTLBinaryArchive
- (BOOL)addLibraryWithDescriptor:(nonnull MTLStitchedLibraryDescriptor *)descriptor error:(NSError * _Nullable * _Nullable)error;
MTLDevice
- (nullable id<MTLLogState>)newLogStateWithDescriptor:(MTLLogStateDescriptor * _Nonnull)descriptor error:(NSError * _Nullable * _Nullable)error;
MTLDevice
- (nullable id<MTLCommandQueue>)newCommandQueueWithDescriptor:(nonnull MTLCommandQueueDescriptor *)descriptor;
MTLDevice
- (nullable id<MTLResidencySet>)newResidencySetWithDescriptor:(nonnull MTLResidencySetDescriptor *)desc error:(NSError * _Nullable * _Nullable)error;
MTLCommandBuffer
- (void)useResidencySet:(nonnull id<MTLResidencySet>)residencySet;
MTLCommandBuffer
- (void)useResidencySets:(id<MTLResidencySet> _Nonnull const * _Nonnull)residencySets count:(NSUInteger)count;
MTLCommandQueue
- (void)addResidencySet:(nonnull id<MTLResidencySet>)residencySet;
MTLCommandQueue
- (void)addResidencySets:(id<MTLResidencySet> _Nonnull const * _Nonnull)residencySets count:(NSUInteger)count;
MTLCommandQueue
- (void)removeResidencySet:(nonnull id<MTLResidencySet>)residencySet;
MTLCommandQueue
- (void)removeResidencySets:(id<MTLResidencySet> _Nonnull const * _Nonnull)residencySets count:(NSUInteger)count;

Protocols

MTLResidencySet
MTLAllocation
MTLLogState

Classes

MTLResidencySetDescriptor
MTLCommandQueueDescriptor
MTLLogStateDescriptor

Extensions

NSDeviceCertification

Typealiases

typedef NSInteger NSDeviceCertification
typedef NSInteger NSProcessPerformanceProfile

Properties & Constants

MTLStitchedLibraryDescriptor
@property(nonatomic, copy, readwrite, nonnull) NSArray<id<MTLBinaryArchive>> *binaryArchives;
MTLStitchedLibraryDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLStitchedLibraryOptions options;
MTLRenderPipelineDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLShaderValidation shaderValidation;
MTLRenderPipelineState
@property(nonatomic, readonly) MTLShaderValidation shaderValidation;
MTLTileRenderPipelineDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLShaderValidation shaderValidation;
MTLMeshRenderPipelineDescriptor
@property(nonatomic, copy, readwrite, nullable) NSArray<id<MTLBinaryArchive>> *binaryArchives;
MTLMeshRenderPipelineDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLShaderValidation shaderValidation;
MTLCommandBufferDescriptor
@property(nonatomic, retain, readwrite, nullable) id<MTLLogState> logState;
extern const NSDeviceCertification NSDeviceCertificationiPhonePerformanceGaming
extern const NSProcessPerformanceProfile NSProcessPerformanceProfileDefault
extern const NSProcessPerformanceProfile NSProcessPerformanceProfileSustained
extern const NSNotificationName NSProcessInfoPerformanceProfileDidChangeNotification
MTLAccelerationStructureTriangleGeometryDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLMatrixLayout transformationMatrixLayout;
MTLAccelerationStructureMotionTriangleGeometryDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLMatrixLayout transformationMatrixLayout;
MTLInstanceAccelerationStructureDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLMatrixLayout instanceTransformationMatrixLayout;
MTLInstanceAccelerationStructureDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLTransformType motionTransformType;
MTLInstanceAccelerationStructureDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) NSUInteger motionTransformStride;
MTLIndirectInstanceAccelerationStructureDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLMatrixLayout instanceTransformationMatrixLayout;
MTLIndirectInstanceAccelerationStructureDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLTransformType motionTransformType;
MTLIndirectInstanceAccelerationStructureDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) NSUInteger motionTransformStride;
MTLComputePipelineDescriptor
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLShaderValidation shaderValidation;
MTLComputePipelineState
@property(nonatomic, readonly) MTLShaderValidation shaderValidation;
MTLCompileOptions
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLMathMode mathMode;
MTLCompileOptions
@property(nonatomic, assign, unsafe_unretained, readwrite) MTLMathFloatingPointFunctions mathFloatingPointFunctions;
MTLCompileOptions
@property(nonatomic, assign, unsafe_unretained, readwrite) BOOL enableLogging;
extern const NSErrorDomain _Nonnull MTLLogStateErrorDomain