-
Notifications
You must be signed in to change notification settings - Fork 549
Metal iOS xcode26.0 b4
Alex Soto edited this page Jul 22, 2025
·
2 revisions
#Metal.framework
diff -ruN /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4CommandQueue.h /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4CommandQueue.h
--- /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4CommandQueue.h 2025-06-27 15:39:00
+++ /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4CommandQueue.h 2025-07-12 00:46:35
@@ -91,7 +91,7 @@
///
/// When performing a sparse mapping update, you are responsible for issuing a barrier against stage `MTLStageResourceState`.
///
-/// You can determine the sparse texture tier by calling `MTLTexture/sparseTextureTier`.
+/// You can determine the sparse texture tier by calling ``MTLTexture/sparseTextureTier``.
typedef struct
{
/// The mode of the mapping operation to perform.
@@ -105,9 +105,14 @@
MTLSparseTextureMappingMode mode;
/// The region in the texture to update, in tiles.
+ ///
+ /// When ``textureLevel`` is equal to the texture's ``MTLTexture/firstMipmapInTail``,
+ /// set `origin.y` to `0` and `size.height` to `1`.
MTLRegion textureRegion;
/// The index of the mipmap level in the texture to update.
+ ///
+ /// Provide a value between `0` and the texture's ``MTLTexture/firstMipmapInTail``.
NSUInteger textureLevel;
/// The index of the array slice in the texture to update.
@@ -126,9 +131,17 @@
/// The region in the source texture, in tiles.
///
/// The tiles remain mapped in the source texture.
+ ///
+ /// When ``sourceLevel`` is equal to the source texture's ``MTLTexture/firstMipmapInTail``,
+ /// set `origin.y` to `0` and `size.height` to `1`.
MTLRegion sourceRegion;
/// The index of the mipmap level in the source texture.
+ ///
+ /// Provide a value between `0` and the source texture's ``MTLTexture/firstMipmapInTail``.
+ ///
+ /// When ``sourceLevel`` is equal to the source texture's ``MTLTexture/firstMipmapInTail``,
+ /// set ``destinationLevel`` to the destination texture's ``MTLTexture/firstMipmapInTail``.
NSUInteger sourceLevel;
/// The index of the array slice in the texture source of the copy operation.
@@ -140,9 +153,17 @@
///
/// The X, Y and Z coordinates of the tiles relative to the origin match the same
/// coordinates in the source region.
+ ///
+ /// When ``destinationLevel`` is equal to the destination texture's ``MTLTexture/firstMipmapInTail``,
+ /// set `destinationOrigin.y` to `0`.
MTLOrigin destinationOrigin;
/// The index of the mipmap level in the destination texture.
+ ///
+ /// Provide a value between `0` and the destination texture's ``MTLTexture/firstMipmapInTail``.
+ ///
+ /// When ``sourceLevel`` is equal to the source texture's ``MTLTexture/firstMipmapInTail``,
+ /// set ``destinationLevel`` to the destination texture's ``MTLTexture/firstMipmapInTail``.
NSUInteger destinationLevel;
/// The index of the array slice in the destination texture to copy into.
diff -ruN /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderCommandEncoder.h /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderCommandEncoder.h
--- /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderCommandEncoder.h 2025-06-27 15:39:00
+++ /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderCommandEncoder.h 2025-07-12 00:09:25
@@ -28,11 +28,13 @@
///
/// 1. Commit all command encoders together in an array you provide to ``MTL4CommandQueue/commit:count:`` or ``MTL4CommandQueue/commit:count:options:``
/// 2. The first command buffer in the array contains a render pass that you start with option ``MTL4RenderEncoderOptionSuspending``
-/// 2. The last command buffer in the array contains the same render pass that you start with option ``MTL4RenderEncoderOptionResuming``
-/// 3. All intermediate command buffers between the first and last in the array contain the same render pass that you
+/// 3. The last command buffer in the array contains the same render pass that you start with option ``MTL4RenderEncoderOptionResuming``
+/// 4. All intermediate command buffers between the first and last in the array contain the same render pass that you
/// start with both ``MTL4RenderEncoderOptionResuming`` and ``MTL4RenderEncoderOptionSuspending`` options.
/// 5. The sequence of render passes, in submission order, doesn't intermix with compute, blit, acceleration structure
/// or machine learning encoding.
+/// 6. A command buffer shouldn't contain a render pass that you start with option ``MTL4RenderEncoderOptionSuspending`` if
+/// it already contains a render pass that you start with option ``MTL4RenderEncoderOptionResuming``.
typedef NS_OPTIONS(NSUInteger, MTL4RenderEncoderOptions)
{
/// Declares that this render pass doesn't suspend nor resume.
diff -ruN /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPass.h /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPass.h
--- /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPass.h 2025-06-25 19:38:33
+++ /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPass.h 2025-07-12 00:09:25
@@ -47,18 +47,22 @@
/// Assigns the per-tile size, in bytes, of the persistent threadgroup memory allocation of this render pass.
@property (nonatomic) NSUInteger threadgroupMemoryLength;
-/// Sets the width, in pixels, of the tiles into which Metal divides the render attachments for tile-based rendering.
+/// The width of the tiles, in pixels, a render pass you create with this descriptor applies to its attachments.
///
-/// When set to `0`, the default, Metal chooses a width that fits within local memory.
+/// For tile-based rendering, Metal divides each render attachment into smaller regions, or _tiles_.
+/// The property's default is `0`, which tells Metal to select a size that fits in tile memory.
///
-/// See also: <doc:tailor-your-apps-for-apple-gpus-and-tile-based-deferred-rendering.md>
+/// See <doc:tailor-your-apps-for-apple-gpus-and-tile-based-deferred-rendering>
+/// for more information about tiles, tile memory, and deferred rendering.
@property (nonatomic) NSUInteger tileWidth;
-/// Sets the height, in pixels, of the tiles in which Metal divides the render attachments for tile-based rendering.
+/// The height of the tiles, in pixels, a render pass you create with this descriptor applies to its attachments.
///
-/// When set to `0`, the default, Metal chooses a height that fits within memory.
+/// For tile-based rendering, Metal divides each render attachment into smaller regions, or _tiles_.
+/// The property's default is `0`, which tells Metal to select a size that fits in tile memory.
///
-/// See also: <doc:tailor-your-apps-for-apple-gpus-and-tile-based-deferred-rendering.md>
+/// See <doc:tailor-your-apps-for-apple-gpus-and-tile-based-deferred-rendering>
+/// for more information about tiles, tile memory, and deferred rendering.
@property (nonatomic) NSUInteger tileHeight;
/// Sets the default raster sample count for the render pass when it references no attachments.
diff -ruN /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPipeline.h /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPipeline.h
--- /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPipeline.h 2025-06-27 15:38:58
+++ /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/MTL4RenderPipeline.h 2025-07-12 00:46:34
@@ -48,9 +48,9 @@
/// This property defaults to ``MTLPixelFormatInvalid``.
@property (nonatomic) MTLPixelFormat pixelFormat;
-/// Enables blending.
+/// Configure the blend state for color attachments the pipeline state uses.
///
-/// This property's default value is <doc://com.apple.documentation/documentation/swift/false>.
+/// This property's default value is ``MTL4BlendStateDisabled``.
@property (nonatomic) MTL4BlendState blendingState;
/// Configures the source RGB blend factor.
diff -ruN /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/Metal.apinotes /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/Metal.apinotes
--- /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/Metal.apinotes 2025-06-12 17:46:37
+++ /Applications/Xcode_26.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Metal.framework/Headers/Metal.apinotes 2025-07-10 19:11:12
@@ -11,6 +11,8 @@
NSErrorDomain: MTLDynamicLibraryDomain
- Name: MTLBinaryArchiveError
NSErrorDomain: MTLBinaryArchiveDomain
+- Name: MTL4CommandQueueError
+ NSErrorDomain: MTL4CommandQueueErrorDomain
Globals:
- Name: MTLDeviceWasAddedNotification
SwiftName: wasAdded