Package org.lwjgl.opengl
Class ContextAttribs
java.lang.Object
org.lwjgl.opengl.ContextAttribs
This class represents the context attributes passed to CreateContextAttribs of the ARB_create_context extension.
The attributes supported are described in the following extensions:
- WGL_ARB_create_context(_profile) and GLX_ARB_create_context(_profile)
- WGL_ARB_create_context_robustness and GLX_ARB_create_context_robustness
- WGL_ARB_robustness_isolation and GLX_ARB_robustness_isolation
- WGL_EXT_create_context_es2_profile and GLX_EXT_create_context_es2_profile
- KHR_context_flush_control
CONTEXT_FORWARD_COMPATIBLE_BIT_ARB
flag is used, LWJGL will not load the deprecated functionality (as defined in the OpenGL 3.0
specification), even if the driver exposes the corresponding entry points.
This extension is not supported on MacOS X. However, in order to enable the GL 3.2 context on MacOS X 10.7 or newer, an instance of this class must be passed
to LWJGL. The only valid configuration is ContextAttribs(3, 2, CONTEXT_CORE_PROFILE_BIT_ARB)
, anything else will be ignored.- Author:
- spasi <spasi@users.sourceforge.net>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
-
Constructor Summary
ConstructorsConstructorDescriptionCreates the default ContextAttribs instance.ContextAttribs
(int majorVersion, int minorVersion) Creates a ContextAttribs instance for the given OpenGL version.ContextAttribs
(int majorVersion, int minorVersion, int profileMask) Creates a new ContextAttribs instance with the given attributes.ContextAttribs
(int majorVersion, int minorVersion, int profileMask, int contextFlags) Creates a new ContextAttribs instance with the given attributes. -
Method Summary
Modifier and TypeMethodDescriptionint
Returns theCONTEXT_FLAGS_ARB
value.int
Returns theCONTEXT_RELEASE_BEHABIOR_ARB
value.int
Returns theCONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
value.int
Returns theCONTEXT_LAYER_PLANE_ARB
value.int
Returns theCONTEXT_MAJOR_VERSION_ARB
value.int
Returns theCONTEXT_MINOR_VERSION_ARB
value.int
Returns theCONTEXT_PROFILE_MASK_ARB
value.boolean
Returns true if theCONTEXT_RESET_ISOLATION_BIT_ARB
has been set.boolean
isDebug()
Returns true if theCONTEXT_DEBUG_BIT_ARB
has been set.boolean
Returns true if theCONTEXT_FORWARD_COMPATIBLE_BIT_ARB
has been set.boolean
Deprecated.boolean
Returns true if theCONTEXT_COMPATIBILITY_PROFILE_BIT_ARB
has been set.boolean
Returns true if theCONTEXT_CORE_PROFILE_BIT_ARB
has been set.boolean
Returns true if theCONTEXT_ES2_PROFILE_BIT_EXT
has been set.boolean
Returns true if theCONTEXT_ROBUST_ACCESS_BIT_ARB
has been set.toString()
withContextReleaseBehavior
(int behavior) Returns a ContextAttribs instance withCONTEXT_RELEASE_BEHABIOR_ARB
set to the given behavior.withContextResetIsolation
(boolean contextResetIsolation) Returns a newContextAttribs
instance with theCONTEXT_RESET_ISOLATION_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value.withDebug
(boolean debug) Returns a newContextAttribs
instance with theCONTEXT_DEBUG_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value.withForwardCompatible
(boolean forwardCompatible) Returns a newContextAttribs
instance with theCONTEXT_FORWARD_COMPATIBLE_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value.withLayer
(int layerPlane) Returns a newContextAttribs
instance withCONTEXT_LAYER_PLANE_ARB
set to the given value.withLoseContextOnReset
(boolean loseContextOnReset) Deprecated.usewithResetNotificationStrategy(int)
insteadwithProfileCompatibility
(boolean profileCompatibility) Returns a newContextAttribs
instance with theCONTEXT_COMPATIBILITY_PROFILE_BIT_ARB
bit inCONTEXT_PROFILE_MASK_ARB
set to the given value.withProfileCore
(boolean profileCore) Returns a newContextAttribs
instance with theCONTEXT_CORE_PROFILE_BIT_ARB
bit inCONTEXT_PROFILE_MASK_ARB
set to the given value.withProfileES
(boolean profileES) Returns a newContextAttribs
instance with theCONTEXT_ES2_PROFILE_BIT_EXT
bit inCONTEXT_PROFILE_MASK_ARB
set to the given value.withResetNotificationStrategy
(int strategy) Returns a ContextAttribs instance withCONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
set to the given strategy.withRobustAccess
(boolean robustAccess) Returns a newContextAttribs
instance with theCONTEXT_ROBUST_ACCESS_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value.
-
Field Details
-
CONTEXT_MAJOR_VERSION_ARB
public static final int CONTEXT_MAJOR_VERSION_ARB- See Also:
-
CONTEXT_MINOR_VERSION_ARB
public static final int CONTEXT_MINOR_VERSION_ARB- See Also:
-
CONTEXT_PROFILE_MASK_ARB
public static final int CONTEXT_PROFILE_MASK_ARB- See Also:
-
CONTEXT_CORE_PROFILE_BIT_ARB
public static final int CONTEXT_CORE_PROFILE_BIT_ARB- See Also:
-
CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB
public static final int CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB- See Also:
-
CONTEXT_ES2_PROFILE_BIT_EXT
public static final int CONTEXT_ES2_PROFILE_BIT_EXT- See Also:
-
CONTEXT_FLAGS_ARB
public static final int CONTEXT_FLAGS_ARB- See Also:
-
CONTEXT_DEBUG_BIT_ARB
public static final int CONTEXT_DEBUG_BIT_ARB- See Also:
-
CONTEXT_FORWARD_COMPATIBLE_BIT_ARB
public static final int CONTEXT_FORWARD_COMPATIBLE_BIT_ARB- See Also:
-
CONTEXT_ROBUST_ACCESS_BIT_ARB
public static final int CONTEXT_ROBUST_ACCESS_BIT_ARB- See Also:
-
CONTEXT_RESET_ISOLATION_BIT_ARB
public static final int CONTEXT_RESET_ISOLATION_BIT_ARB- See Also:
-
CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
public static final int CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB- See Also:
-
NO_RESET_NOTIFICATION_ARB
public static final int NO_RESET_NOTIFICATION_ARB- See Also:
-
LOSE_CONTEXT_ON_RESET_ARB
public static final int LOSE_CONTEXT_ON_RESET_ARB- See Also:
-
CONTEXT_RELEASE_BEHABIOR_ARB
public static final int CONTEXT_RELEASE_BEHABIOR_ARB- See Also:
-
CONTEXT_RELEASE_BEHAVIOR_NONE_ARB
public static final int CONTEXT_RELEASE_BEHAVIOR_NONE_ARB- See Also:
-
CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB
public static final int CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB- See Also:
-
CONTEXT_LAYER_PLANE_ARB
public static final int CONTEXT_LAYER_PLANE_ARB- See Also:
-
-
Constructor Details
-
ContextAttribs
public ContextAttribs()Creates the default ContextAttribs instance. No special attributes will be used when creating the OpenGL context. -
ContextAttribs
public ContextAttribs(int majorVersion, int minorVersion) Creates a ContextAttribs instance for the given OpenGL version. -
ContextAttribs
public ContextAttribs(int majorVersion, int minorVersion, int profileMask) Creates a new ContextAttribs instance with the given attributes.- Parameters:
majorVersion
- the major OpenGL versionminorVersion
- the minor OpenGL versionprofileMask
- the context profile mask. One of:CONTEXT_CORE_PROFILE_BIT_ARB
,CONTEXT_FORWARD_COMPATIBLE_BIT_ARB
,CONTEXT_ES2_PROFILE_BIT_EXT
-
ContextAttribs
public ContextAttribs(int majorVersion, int minorVersion, int profileMask, int contextFlags) Creates a new ContextAttribs instance with the given attributes.- Parameters:
majorVersion
- the major OpenGL versionminorVersion
- the minor OpenGL versionprofileMask
- the context profile mask. One of:CONTEXT_CORE_PROFILE_BIT_ARB
,CONTEXT_FORWARD_COMPATIBLE_BIT_ARB
,CONTEXT_ES2_PROFILE_BIT_EXT
contextFlags
- the context flags, a bitfield value. One or more of:CONTEXT_DEBUG_BIT_ARB
,CONTEXT_FORWARD_COMPATIBLE_BIT_ARB
,CONTEXT_ROBUST_ACCESS_BIT_ARB
,CONTEXT_RESET_ISOLATION_BIT_ARB
-
-
Method Details
-
getMajorVersion
public int getMajorVersion()Returns theCONTEXT_MAJOR_VERSION_ARB
value. -
getMinorVersion
public int getMinorVersion()Returns theCONTEXT_MINOR_VERSION_ARB
value. -
getProfileMask
public int getProfileMask()Returns theCONTEXT_PROFILE_MASK_ARB
value. -
isProfileCore
public boolean isProfileCore()Returns true if theCONTEXT_CORE_PROFILE_BIT_ARB
has been set. -
isProfileCompatibility
public boolean isProfileCompatibility()Returns true if theCONTEXT_COMPATIBILITY_PROFILE_BIT_ARB
has been set. -
isProfileES
public boolean isProfileES()Returns true if theCONTEXT_ES2_PROFILE_BIT_EXT
has been set. -
getContextFlags
public int getContextFlags()Returns theCONTEXT_FLAGS_ARB
value. -
isDebug
public boolean isDebug()Returns true if theCONTEXT_DEBUG_BIT_ARB
has been set. -
isForwardCompatible
public boolean isForwardCompatible()Returns true if theCONTEXT_FORWARD_COMPATIBLE_BIT_ARB
has been set. -
isRobustAccess
public boolean isRobustAccess()Returns true if theCONTEXT_ROBUST_ACCESS_BIT_ARB
has been set. -
isContextResetIsolation
public boolean isContextResetIsolation()Returns true if theCONTEXT_RESET_ISOLATION_BIT_ARB
has been set. -
getContextResetNotificationStrategy
public int getContextResetNotificationStrategy()Returns theCONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
value. -
isLoseContextOnReset
public boolean isLoseContextOnReset()Deprecated.usegetContextResetNotificationStrategy()
insteadReturns true if theCONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
has been set toLOSE_CONTEXT_ON_RESET_ARB
. -
getContextReleaseBehavior
public int getContextReleaseBehavior()Returns theCONTEXT_RELEASE_BEHABIOR_ARB
value. -
getLayerPlane
public int getLayerPlane()Returns theCONTEXT_LAYER_PLANE_ARB
value. -
withProfileCore
Returns a newContextAttribs
instance with theCONTEXT_CORE_PROFILE_BIT_ARB
bit inCONTEXT_PROFILE_MASK_ARB
set to the given value. IfprofileCore
is true, all other bits in the mask are cleared. -
withProfileCompatibility
Returns a newContextAttribs
instance with theCONTEXT_COMPATIBILITY_PROFILE_BIT_ARB
bit inCONTEXT_PROFILE_MASK_ARB
set to the given value. IfprofileCompatibility
is true, all other bits in the mask are cleared. -
withProfileES
Returns a newContextAttribs
instance with theCONTEXT_ES2_PROFILE_BIT_EXT
bit inCONTEXT_PROFILE_MASK_ARB
set to the given value. IfprofileES
is true, all other bits in the mask are cleared. -
withDebug
Returns a newContextAttribs
instance with theCONTEXT_DEBUG_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value. -
withForwardCompatible
Returns a newContextAttribs
instance with theCONTEXT_FORWARD_COMPATIBLE_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value. -
withRobustAccess
Returns a newContextAttribs
instance with theCONTEXT_ROBUST_ACCESS_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value. -
withContextResetIsolation
Returns a newContextAttribs
instance with theCONTEXT_RESET_ISOLATION_BIT_ARB
bit inCONTEXT_FLAGS_ARB
set to the given value. -
withResetNotificationStrategy
Returns a ContextAttribs instance withCONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
set to the given strategy. The default context reset notification strategy isNO_RESET_NOTIFICATION_ARB
.- Parameters:
strategy
- the context reset notification strategy. One of:NO_RESET_NOTIFICATION_ARB
,LOSE_CONTEXT_ON_RESET_ARB
- Returns:
- the new ContextAttribs
-
withLoseContextOnReset
Deprecated.usewithResetNotificationStrategy(int)
insteadReturns a ContextAttribs instance withCONTEXT_RESET_NOTIFICATION_STRATEGY_ARB
set toLOSE_CONTEXT_ON_RESET_ARB
if the parameter is true or toNO_RESET_NOTIFICATION_ARB
if the parameter is false.- Parameters:
loseContextOnReset
- the context reset notification strategy- Returns:
- the new ContextAttribs
-
withContextReleaseBehavior
Returns a ContextAttribs instance withCONTEXT_RELEASE_BEHABIOR_ARB
set to the given behavior. The default context release behavior isCONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB
.- Parameters:
behavior
- the context release behavior. One of:CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB
,CONTEXT_RELEASE_BEHAVIOR_NONE_ARB
- Returns:
- the new ContextAttribs
-
withLayer
Returns a newContextAttribs
instance withCONTEXT_LAYER_PLANE_ARB
set to the given value. -
toString
-
getContextResetNotificationStrategy()
instead