<!--
{
  "documentType" : "article",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/opengl-profiles",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "OpenGL Profiles"
}
-->

# OpenGL Profiles

Constants that specify the functionality provided by the renderer.

## Discussion

An OpenGL Profile is requested as part of the pixel format attributes string. When a context is created for a profile, the context must at least implement the requested version of the OpenGL specification. The context may implement a different version of the OpenGL specification as long as the version it implements is compatible with the requested version.

## Topics

### Constants

[`NSOpenGLProfileVersionLegacy`](/documentation/AppKit/NSOpenGLProfileVersionLegacy)

The requested profile is a legacy (pre-OpenGL 3.0) profile.

[`NSOpenGLProfileVersion3_2Core`](/documentation/AppKit/NSOpenGLProfileVersion3_2Core)

The requested profile must implement the OpenGL 3.2 core functionality.

[`NSOpenGLProfileVersion4_1Core`](/documentation/AppKit/NSOpenGLProfileVersion4_1Core)



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)