---
title: present()
framework: metal
role: symbol
role_heading: Instance Method
path: metal/mtldrawable/present()
---

# present()

Presents the drawable onscreen as soon as possible.

## Declaration

```swift
func present()
```

## Discussion

Discussion 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 as soon as possible after all scheduled render or write requests for that drawable are complete. note: 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 present(_:) method instead of this method. The present(_:) method is a convenience method that calls the drawable’s present() method after the command queue schedules that command buffer for execution.

## See Also

### Presenting the drawable

- [present(afterMinimumDuration:)](metal/mtldrawable/present(afterminimumduration:).md)
- [present(at:)](metal/mtldrawable/present(at:).md)
