{"abstract":[{"text":"Presents the drawable onscreen as soon as possible after a previous drawable is visible for the specified duration.","type":"text"}],"hierarchy":{"paths":[["doc:\/\/com.apple.documentation\/documentation\/technologies","doc:\/\/com.apple.metal\/documentation\/Metal","doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present(afterMinimumDuration:)"},"kind":"symbol","legalNotices":{"copyright":"Copyright &copy; 2026 Apple Inc. All rights reserved.","privacyPolicy":"https:\/\/www.apple.com\/privacy\/privacy-policy","termsOfUse":"https:\/\/www.apple.com\/legal\/internet-services\/terms\/site.html"},"metadata":{"availableLanguages":["de-DE","en-US","es-419","fr-FR","it-IT","ja-JP","ko-KR","pt-BR","zh-CN"],"externalID":"c:objc(pl)MTLDrawable(im)presentAfterMinimumDuration:","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"present"},{"kind":"text","text":"("},{"kind":"externalParam","text":"afterMinimumDuration"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"c:@T@CFTimeInterval","text":"CFTimeInterval"},{"kind":"text","text":")"}],"modules":[{"name":"Metal"}],"navigatorTitle":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentAfterMinimumDuration:"}],"platforms":[{"introducedAt":"10.3","name":"iOS"},{"introducedAt":"10.3","name":"iPadOS"},{"introducedAt":"13.4","name":"Mac Catalyst"},{"introducedAt":"10.15.4","name":"macOS"},{"introducedAt":"10.2","name":"tvOS"},{"introducedAt":"1.0","name":"visionOS"}],"required":true,"role":"symbol","roleHeading":"Instance Method","symbolKind":"method","title":"present(afterMinimumDuration:)"},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["iOS","iPadOS","Mac Catalyst","macOS","tvOS","visionOS"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"present"},{"kind":"text","text":"("},{"kind":"externalParam","text":"afterMinimumDuration"},{"kind":"text","text":" "},{"kind":"internalParam","text":"duration"},{"kind":"text","text":": "},{"identifier":"doc:\/\/com.apple.documentation\/documentation\/CoreFoundation\/CFTimeInterval","kind":"typeIdentifier","preciseIdentifier":"c:@T@CFTimeInterval","text":"CFTimeInterval"},{"kind":"text","text":")"}]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"text":"The previous drawable’s minimum display time, in seconds.","type":"text"}],"type":"paragraph"}],"name":"duration"}]},{"content":[{"anchor":"discussion","level":2,"text":"Discussion","type":"heading"},{"inlineContent":[{"text":"When a command queue schedules a command buffer for execution, it tracks whether any commands in that command buffer need to render or write to the drawable object. When you call this method, the drawable presents its contents at a future time when all render and write requests for that drawable are complete and a previous drawable has been visible onscreen for the specified duration. Use this method to schedule drawables at a regular interval.","type":"text"}],"type":"paragraph"},{"content":[{"inlineContent":[{"text":"","type":"text"},{"text":" ","type":"text"},{"text":"To avoid presenting a drawable before any work is scheduled, or to avoid holding on to a drawable longer than necessary, call a command buffer’s ","type":"text"},{"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLCommandBuffer\/present(_:afterMinimumDuration:)","isActive":true,"type":"reference"},{"text":" method instead. The ","type":"text"},{"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLCommandBuffer\/present(_:afterMinimumDuration:)","isActive":true,"type":"reference"},{"text":" method is a convenience method that calls the given drawable’s ","type":"text"},{"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present(afterMinimumDuration:)","isActive":true,"type":"reference"},{"text":" method after the command queue schedules that command buffer for execution.","type":"text"}],"type":"paragraph"}],"name":"Note","style":"note","type":"aside"}],"kind":"content"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"seeAlsoSections":[{"anchor":"Presenting-the-drawable","generated":true,"identifiers":["doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present()","doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present(at:)"],"title":"Presenting the drawable"}],"variants":[{"paths":["\/documentation\/metal\/mtldrawable\/present(afterminimumduration:)"],"traits":[{"interfaceLanguage":"swift"}]},{"paths":["\/documentation\/metal\/mtldrawable\/present(afterminimumduration:)"],"traits":[{"interfaceLanguage":"occ"}]}],"references":{"doc://com.apple.documentation/documentation/CoreFoundation/CFTimeInterval":{"abstract":[{"text":"Type used to represent elapsed time in seconds.","type":"text"}],"fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"kind":"identifier","text":"CFTimeInterval"}],"identifier":"doc:\/\/com.apple.documentation\/documentation\/CoreFoundation\/CFTimeInterval","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"CFTimeInterval"}],"role":"symbol","title":"CFTimeInterval","type":"topic","url":"\/documentation\/corefoundation\/cftimeinterval"},"doc://com.apple.documentation/documentation/technologies":{"abstract":[],"identifier":"doc:\/\/com.apple.documentation\/documentation\/technologies","kind":"technologies","role":"overview","title":"Technologies","type":"topic","url":"\/documentation\/technologies"},"doc://com.apple.metal/documentation/Metal":{"abstract":[{"text":"Render advanced 3D graphics and compute data in parallel with graphics processors.","type":"text"}],"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal","kind":"symbol","navigatorTitle":[{"kind":"text","text":"Metal"}],"role":"collection","title":"Metal","type":"topic","url":"\/documentation\/metal"},"doc://com.apple.metal/documentation/Metal/MTLCommandBuffer/present(_:afterMinimumDuration:)":{"abstract":[{"text":"Presents a drawable after the system presents the previous drawable for an amount of time.","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"present"},{"kind":"text","text":"(any "},{"kind":"typeIdentifier","preciseIdentifier":"c:objc(pl)MTLDrawable","text":"MTLDrawable"},{"kind":"text","text":", "},{"kind":"externalParam","text":"afterMinimumDuration"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"c:@T@CFTimeInterval","text":"CFTimeInterval"},{"kind":"text","text":")"}],"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLCommandBuffer\/present(_:afterMinimumDuration:)","kind":"symbol","navigatorTitle":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentDrawable:afterMinimumDuration:"}],"required":true,"role":"symbol","title":"present(_:afterMinimumDuration:)","type":"topic","url":"\/documentation\/metal\/mtlcommandbuffer\/present(_:afterminimumduration:)"},"doc://com.apple.metal/documentation/Metal/MTLDrawable":{"abstract":[{"text":"A displayable resource that can be rendered or written to.","type":"text"}],"fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"MTLDrawable"}],"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable","kind":"symbol","navigatorTitle":[{"kind":"identifier","text":"MTLDrawable"}],"role":"symbol","title":"MTLDrawable","type":"topic","url":"\/documentation\/metal\/mtldrawable"},"doc://com.apple.metal/documentation/Metal/MTLDrawable/present()":{"abstract":[{"text":"Presents the drawable onscreen as soon as possible.","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"present"},{"kind":"text","text":"()"}],"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present()","kind":"symbol","navigatorTitle":[{"kind":"text","text":"- "},{"kind":"identifier","text":"present"}],"required":true,"role":"symbol","title":"present()","type":"topic","url":"\/documentation\/metal\/mtldrawable\/present()"},"doc://com.apple.metal/documentation/Metal/MTLDrawable/present(afterMinimumDuration:)":{"abstract":[{"text":"Presents the drawable onscreen as soon as possible after a previous drawable is visible for the specified duration.","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"present"},{"kind":"text","text":"("},{"kind":"externalParam","text":"afterMinimumDuration"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"c:@T@CFTimeInterval","text":"CFTimeInterval"},{"kind":"text","text":")"}],"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present(afterMinimumDuration:)","kind":"symbol","navigatorTitle":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentAfterMinimumDuration:"}],"required":true,"role":"symbol","title":"present(afterMinimumDuration:)","type":"topic","url":"\/documentation\/metal\/mtldrawable\/present(afterminimumduration:)"},"doc://com.apple.metal/documentation/Metal/MTLDrawable/present(at:)":{"abstract":[{"text":"Presents the drawable onscreen at a specific host time.","type":"text"}],"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"present"},{"kind":"text","text":"("},{"kind":"externalParam","text":"at"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"c:@T@CFTimeInterval","text":"CFTimeInterval"},{"kind":"text","text":")"}],"identifier":"doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present(at:)","kind":"symbol","navigatorTitle":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentAtTime:"}],"required":true,"role":"symbol","title":"present(at:)","type":"topic","url":"\/documentation\/metal\/mtldrawable\/present(at:)"}},"variantOverrides":[{"patch":[{"op":"replace","path":"\/identifier\/interfaceLanguage","value":"occ"},{"op":"replace","path":"\/metadata\/platforms","value":[{"introducedAt":"10.3","name":"iOS"},{"introducedAt":"10.3","name":"iPadOS"},{"introducedAt":"13.4","name":"Mac Catalyst"},{"introducedAt":"10.15.4","name":"macOS"},{"introducedAt":"10.2","name":"tvOS"},{"introducedAt":"1.0","name":"visionOS"}]},{"op":"replace","path":"\/metadata\/roleHeading","value":"Instance Method"},{"op":"replace","path":"\/metadata\/title","value":"presentAfterMinimumDuration:"},{"op":"replace","path":"\/metadata\/symbolKind","value":"method"},{"op":"replace","path":"\/metadata\/fragments","value":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentAfterMinimumDuration:"}]},{"op":"replace","path":"\/hierarchy","value":{"paths":[["doc:\/\/com.apple.documentation\/documentation\/technologies","doc:\/\/com.apple.metal\/documentation\/Metal","doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable"]]}},{"op":"add","path":"\/topicSections","value":null},{"op":"add","path":"\/relationshipsSections","value":null},{"op":"replace","path":"\/seeAlsoSections","value":[{"anchor":"Presenting-the-drawable","generated":true,"identifiers":["doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present()","doc:\/\/com.apple.metal\/documentation\/Metal\/MTLDrawable\/present(at:)"],"title":"Presenting the drawable"}]},{"op":"replace","path":"\/primaryContentSections\/0","value":{"declarations":[{"languages":["occ"],"platforms":["iOS","iPadOS","Mac Catalyst","macOS","tvOS","visionOS"],"tokens":[{"kind":"text","text":"- ("},{"kind":"typeIdentifier","preciseIdentifier":"c:v","text":"void"},{"kind":"text","text":") "},{"kind":"identifier","text":"presentAfterMinimumDuration:"},{"kind":"text","text":"("},{"identifier":"doc:\/\/com.apple.documentation\/documentation\/CoreFoundation\/CFTimeInterval","kind":"typeIdentifier","preciseIdentifier":"c:@T@CFTimeInterval","text":"CFTimeInterval"},{"kind":"text","text":") "},{"kind":"internalParam","text":"duration"},{"kind":"text","text":";"}]}],"kind":"declarations"}},{"op":"replace","path":"\/primaryContentSections\/1","value":{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"text":"The previous drawable’s minimum display time, in seconds.","type":"text"}],"type":"paragraph"}],"name":"duration"}]}},{"op":"replace","path":"\/references\/doc:~1~1com.apple.documentation~1documentation~1CoreFoundation~1CFTimeInterval\/fragments","value":[{"kind":"identifier","text":"CFTimeInterval"}]},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLCommandBuffer~1present(_:afterMinimumDuration:)\/title","value":"presentDrawable:afterMinimumDuration:"},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLCommandBuffer~1present(_:afterMinimumDuration:)\/fragments","value":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentDrawable:afterMinimumDuration:"}]},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable\/title","value":"MTLDrawable"},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable\/fragments","value":[{"kind":"identifier","text":"MTLDrawable"}]},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable\/navigatorTitle","value":[{"kind":"identifier","text":"MTLDrawable"}]},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable~1present()\/title","value":"present"},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable~1present()\/fragments","value":[{"kind":"text","text":"- "},{"kind":"identifier","text":"present"}]},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable~1present(afterMinimumDuration:)\/title","value":"presentAfterMinimumDuration:"},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable~1present(afterMinimumDuration:)\/fragments","value":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentAfterMinimumDuration:"}]},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable~1present(at:)\/title","value":"presentAtTime:"},{"op":"replace","path":"\/references\/doc:~1~1com.apple.metal~1documentation~1Metal~1MTLDrawable~1present(at:)\/fragments","value":[{"kind":"text","text":"- "},{"kind":"identifier","text":"presentAtTime:"}]}],"traits":[{"interfaceLanguage":"occ"}]}]}