Class Configuration<T>
Care must be taken when setting static options. Such options are only read once or cached in static final fields. They must be
configured through this class before touching any other LWJGL class.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Configuration<Integer> Sets the size of arrays cached in thread-local storage to minimize allocations while decoding text.static final Configuration<String> Similar toLIBRARY_NAMEfor the Draco library (org.lwjgl.assimp.draco.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the AssImp library (org.lwjgl.assimp.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the BGFX library (org.lwjgl.bgfx.libname).static final Configuration<Object> Sets the mapping algorithm used to resolve the name of bundled shared libraries.static final Configuration<Object> Sets the mapping algorithm used to resolve bundled shared libraries in the classpath/modulepath.static final Configuration<Boolean> Set to true to enable LWJGL's debug mode.static final Configuration<Boolean> When enabled, a warning message will be output toDEBUG_STREAMwhen LWJGL fails to retrieve a function pointer.static final Configuration<Boolean> When enabled,SharedLibraryLoaderexceptions will be printed to theDEBUG_STREAM.static final Configuration<Boolean> Set to true to enable LWJGL's debug mode for theMemoryUtilexplicit memory management API (memAlloc/memFree/etc).static final Configuration<Boolean> Set to true to skip stacktrace generation on each tracked allocation.static final Configuration<Boolean> Set to false to disable tracking of internal memory allocations, in native shared libraries that have been set up to use the LWJGL memory allocator.static final Configuration<Boolean> Set to true to enable LWJGL's debug mode for theMemoryStack.static final Configuration<Object> Can be set to override the defaultAPIUtil.DEBUG_STREAM.static final Configuration<Boolean> Set to true to disable LWJGL's basic checks.static final Configuration<Boolean> Set to true to disable LWJGL's function lookup checks.static final Configuration<Boolean> Set to true to disable LWJGL's shared library hash checks.static final Configuration<Boolean> Set this property to false to disable automatic initialization of the EGL library.static final Configuration<Object> Similar toOPENGL_EXTENSION_FILTERfor the EGL library (org.lwjgl.egl.extensionFilter).static final Configuration<String> Similar toLIBRARY_NAMEfor the EGL library (org.lwjgl.egl.libname).static final Configuration<Boolean> EXPERIMENTAL: EmulatesSystem.loadLibrary(java.lang.String)behavior inLibrary.loadNative.static final Configuration<String> Similar toLIBRARY_NAMEfor the FMOD FSBank library (org.lwjgl.fmod.fsbank.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the FMOD Core library (org.lwjgl.fmod.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the FMOD Studio library (org.lwjgl.fmod.studio.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the FreeType library (org.lwjgl.freetype.libname).static final Configuration<Boolean> macOS only: Set this property to false to disable first thread detection onglfwInit.static final Configuration<String> Similar toLIBRARY_NAMEfor the GLFW library (org.lwjgl.glfw.libname).static final Configuration<Object> Similar toLIBRARY_NAMEfor the HarfBuzz library (org.lwjgl.harfbuzz.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the hwloc library (org.lwjgl.hwloc.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the jawt library (org.lwjgl.system.jawt.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the jemalloc library (org.lwjgl.system.jemalloc.libname).static final Configuration<Integer> Overrides the number of functions in theJNINativeInterface_struct.static final Configuration<String> Similar toLIBRARY_NAMEfor the KTX library (org.lwjgl.ktx.libname).static final Configuration<String> Can be used to override the LWJGL library name.static final Configuration<String> Takes priority overjava.library.path.static final Configuration<String> Similar toLIBRARY_NAMEfor the LLVM/Clang Library (org.lwjgl.llvm.clang.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the LLVM library (org.lwjgl.llvm.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the LLVM/LTO library (org.lwjgl.llvm.clang.libname).static final Configuration<Object> static final Configuration<Boolean> Set to true to enable NativeFileDialog's XDG Desktop Portal backend on Linux.static final Configuration<String> Similar toLIBRARY_NAMEfor the ODBC library (org.lwjgl.odbc.libname).static final Configuration<Boolean> Similar toEGL_EXPLICIT_INITfor the OpenAL library (org.lwjgl.openal.explicitInit).static final Configuration<Object> Similar toOPENGL_EXTENSION_FILTERfor the OpenAL library (org.lwjgl.openal.extensionFilter).static final Configuration<String> Similar toLIBRARY_NAMEfor the OpenAL library (org.lwjgl.openal.libname).static final Configuration<Boolean> Similar toEGL_EXPLICIT_INITfor the OpenCL library (org.lwjgl.opencl.explicitInit).static final Configuration<Object> Similar toOPENGL_EXTENSION_FILTERfor the OpenCL library (org.lwjgl.opencl.extensionFilter).static final Configuration<String> Similar toLIBRARY_NAMEfor the OpenCL library (org.lwjgl.opencl.libname).static final Configuration<String> Defines the API that manages OpenGL contexts.static final Configuration<Boolean> Similar toEGL_EXPLICIT_INITfor the OpenGL library (org.lwjgl.opengl.explicitInit).static final Configuration<Object> Can be used to disable specific extensions.static final Configuration<String> Similar toLIBRARY_NAMEfor the OpenGL library (org.lwjgl.opengl.libname).static final Configuration<Object> Can be used to limit the maximum available OpenGL version.static final Configuration<String> Similar toLIBRARY_NAMEfor the OSMesa library (org.lwjgl.opengl.osmesa.libname).static final Configuration<String> Defines the API that manages OpenGL ES contexts.static final Configuration<Boolean> Similar toEGL_EXPLICIT_INITfor the OpenGL ES library (org.lwjgl.opengles.explicitInit).static final Configuration<Object> Similar toOPENGL_EXTENSION_FILTERfor the OpenGL ES library (org.lwjgl.opengles.extensionFilter).static final Configuration<String> Similar toLIBRARY_NAMEfor the OpenGL ES library (org.lwjgl.opengles.libname).static final Configuration<Object> Similar toOPENGL_MAXVERSIONfor the OpenGL ES library (org.lwjgl.opengles.maxVersion).static final Configuration<Boolean> Similar toEGL_EXPLICIT_INITfor the OpenXR library (org.lwjgl.openxr.explicitInit).static final Configuration<String> Similar toLIBRARY_NAMEfor the OpenXR library (org.lwjgl.openxr.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the Opus library (org.lwjgl.opus.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the SDL library (org.lwjgl.sdl.libname).static final Configuration<String> Similar toLIBRARY_NAMEfor the Shaderc libshaderc library (org.lwjgl.shaderc.libname).static final Configuration<String> Changes the temporary directory name created by LWJGL when extracting shared libraries from JAR files.static final Configuration<Boolean> When enabled, shared libraries found as regular files (not inside a JAR file) in the classpath will first be copied to theSHARED_LIBRARY_EXTRACT_PATH, then loaded from there.static final Configuration<String> Changes the path where LWJGL extracts shared libraries from JAR files.static final Configuration<String> Similar toLIBRARY_NAMEfor the SPIRV-Cross library (org.lwjgl.spvc.libname).static final Configuration<Integer> Sets the stack size, in kilobytes, that will be used in the defaultMemoryStackconstructor.static final Configuration<Boolean> Similar toEGL_EXPLICIT_INITfor the Vulkan library (org.lwjgl.vulkan.explicitInit).static final Configuration<String> Similar toLIBRARY_NAMEfor the Vulkan library (org.lwjgl.vulkan.libname). -
Method Summary
Modifier and TypeMethodDescriptionstatic String[]Returns the default EGL library names for the current platform.@Nullable Tget()Returns the option value.Returns the option value.static String[]Returns the default OpenGL library names for the current platform.static String[]Returns the default OSMEsa library names for the current platform.static String[]Returns the default OpenGL ES library names for the current platform.voidSets the option value.
-
Field Details
-
LIBRARY_PATH
Takes priority overjava.library.path.It may contain one or more directory paths, separated by
File.pathSeparator.Property: org.lwjgl.librarypath
Usage: Dynamic -
BUNDLED_LIBRARY_NAME_MAPPER
Sets the mapping algorithm used to resolve the name of bundled shared libraries.Supported values:
- default - Maps
<libname>to<libname>. - legacy - Maps
<libname>tois64bit(arch) ? <libname> : <libname>32. - <classpath> - A class that implements the
Function<String, String>interface. It will be instantiated using reflection.
When set programmatically, it can also be a
Function<String, String>instance.Property: org.lwjgl.system.bundledLibrary.nameMapper
Type: String or aFunction<String, String>instance
Usage: Static - default - Maps
-
BUNDLED_LIBRARY_PATH_MAPPER
Sets the mapping algorithm used to resolve bundled shared libraries in the classpath/modulepath.Supported values:
- default - Maps
<libpath>to<arch>/<libpath>. - legacy - Maps
<libpath>to<libpath>. - <classpath> - A class that implements the
Function<String, String>interface. It will be instantiated using reflection.
When set programmatically, it can also be a
Function<String, String>instance.Property: org.lwjgl.system.bundledLibrary.nameMapper
Type: String or aFunction<String, String>instance
Usage: Static - default - Maps
-
SHARED_LIBRARY_EXTRACT_DIRECTORY
Changes the temporary directory name created by LWJGL when extracting shared libraries from JAR files.If this option is not set, it defaults to
lwjgl_<user name>.Property: org.lwjgl.system.SharedLibraryExtractDirectory
Usage: Dynamic -
SHARED_LIBRARY_EXTRACT_PATH
Changes the path where LWJGL extracts shared libraries from JAR files.If this option is not set, LWJGL will try the following paths and the first successful will be used:
System.getProperty("java.io.tmpdir")/extractDir/version/arch/- <working directory>/.extractDir/version/arch/
System.getProperty("user.home")/.extractDir/version/arch/Files.createTempDirectory("lwjgl", "")
extractDir = Configuration.SHARED_LIBRARY_EXTRACT_DIRECTORY version = Version.getVersion().replace(' ', '-')Property: org.lwjgl.system.SharedLibraryExtractPath
Usage: Dynamic -
SHARED_LIBRARY_EXTRACT_FORCE
When enabled, shared libraries found as regular files (not inside a JAR file) in the classpath will first be copied to theSHARED_LIBRARY_EXTRACT_PATH, then loaded from there.Property: org.lwjgl.system.SharedLibraryExtractForce
Usage: Dynamic -
EMULATE_SYSTEM_LOADLIBRARY
EXPERIMENTAL: EmulatesSystem.loadLibrary(java.lang.String)behavior inLibrary.loadNative.Property: org.lwjgl.system.EmulateSystemLoadLibrary
Usage: Dynamic -
LIBRARY_NAME
Can be used to override the LWJGL library name.It can be an absolute path.
Property: org.lwjgl.libname
Usage: Dynamic -
MEMORY_ALLOCATOR
Sets the allocator used for theMemoryUtilexplicit memory management API (memAlloc/memFree/etc).Supported values:
- jemalloc - The allocator provided by the jemalloc library.
- rpmalloc - The allocator provided by the rpmalloc library.
LWJGL calls
rpmalloc_initializeonce, when the allocator is created. It never callsrpmalloc_finalize. The user is responsible for callingrpmalloc_thread_initializeandrpmalloc_thread_finalizewhen appropriate. - system - The default system memory allocator
- <classpath> - A class that implements the
MemoryAllocatorinterface. It will be instantiated using reflection.
When set programmatically, it can also be a
MemoryAllocatorinstance.Property: org.lwjgl.system.allocator
Type: String or aMemoryUtil.MemoryAllocatorinstance
Usage: Static -
STACK_SIZE
Sets the stack size, in kilobytes, that will be used in the defaultMemoryStackconstructor.This value is also used for the LWJGL-managed, thread-local,
MemoryStackinstances. If this option is not set, it defaults to 64.Property: org.lwjgl.system.stackSize
Usage: Static -
ARRAY_TLC_SIZE
Sets the size of arrays cached in thread-local storage to minimize allocations while decoding text.The memory cost for the cache is up to two arrays per thread that does text decoding. When the text length is up to this value, a cached array will be used. When the text length is longer than this value, a new array buffer will be allocated.
If this option is not set, it defaults to 8192. Setting the value to 0 will disable the array cache.
Property: org.lwjgl.system.arrayTLCSize
Usage: Static -
JNI_NATIVE_INTERFACE_FUNCTION_COUNT
Overrides the number of functions in theJNINativeInterface_struct.This is only necessary when LWJGL runs on a JVM with a newer, unsupported JNI version, that has introduced new JNI functions. The function count must be accurate in order to use the OpenGL, OpenGL ES, or OpenAL bindings.
The currently known values are:
- 229 for Java 8
- 230 for Java 9 to Java 18
- 231 for Java 19 or higher
Property: org.lwjgl.system.JNINativeInterfaceSize
Usage: Static -
DISABLE_CHECKS
Set to true to disable LWJGL's basic checks.These are trivial checks that LWJGL performs to avoid JVM crashes, very useful during development. Their performance impact is usually minimal, but they may be disabled for release builds.
Property: org.lwjgl.util.NoChecks
Usage: Static -
DISABLE_FUNCTION_CHECKS
Set to true to disable LWJGL's function lookup checks.These checks ensure that required functions are not missing from dynamically loaded shared libraries. This setting is useful when a trusted incompatible library must be loaded.
Property: org.lwjgl.util.NoFunctionChecks
Usage: Dynamic -
DISABLE_HASH_CHECKS
Set to true to disable LWJGL's shared library hash checks.LWJGL compares the shared library hash stored in the classpath, with the hash of the actual library loaded at runtime. These checks print a simple warning when there's a hash mismatch, to help diagnose installation/classpath issues. It is not a security feature.
If this option is not set, it defaults to the value of
DISABLE_CHECKS.Property: org.lwjgl.util.NoLibraryChecks
Usage: Dynamic -
DEBUG
Set to true to enable LWJGL's debug mode.Information messages will be printed to the
APIUtil.DEBUG_STREAMand extra runtime checks will be performed (some potentially expensive, performance-wise).Property: org.lwjgl.util.Debug
Usage: Static -
DEBUG_LOADER
When enabled,SharedLibraryLoaderexceptions will be printed to theDEBUG_STREAM.This option requires
DEBUGto be enabled.Property: org.lwjgl.util.DebugLoader
Usage: Static -
DEBUG_STREAM
Can be set to override the defaultAPIUtil.DEBUG_STREAM.It must be the name of a class that implements the
Supplier<PrintStream>interface. The class will be instantiated using reflection and the result ofgetwill become the#DEBUG_STREAMused by LWJGL.When set programmatically, it can also be a
PrintStreaminstance.Property: org.lwjgl.util.DebugStream
Type: String or aPrintStreaminstance
Usage: Static -
DEBUG_MEMORY_ALLOCATOR
Set to true to enable LWJGL's debug mode for theMemoryUtilexplicit memory management API (memAlloc/memFree/etc).All memory allocations through that API will be tracked and leaks will be reported on JVM exit. The
memReportmethods can also be used.When this option is enabled, a stacktrace is generated on every allocation, which may negatively impact performance. If this becomes a serious issue, the JVM option
-XX:MaxJavaStackTraceDepth=d(whered >= 6) can be used to reduce the overhead.Property: org.lwjgl.util.DebugAllocator
Usage: Static -
DEBUG_MEMORY_ALLOCATOR_INTERNAL
Set to false to disable tracking of internal memory allocations, in native shared libraries that have been set up to use the LWJGL memory allocator.If this option is not set, it defaults to true.
Property: org.lwjgl.util.DebugAllocator.internal
Usage: Static -
DEBUG_MEMORY_ALLOCATOR_FAST
Set to true to skip stacktrace generation on each tracked allocation.When enabled, this option dramatically reduces the performance overhead of memory leak detection. After a leak is detected, disable this option and rerun the application to get the offending allocation's stacktrace.
This option can also be dynamically toggled on and off, to limit the performance impact in specific portions of the application that are prime suspects for memory leaks.
When reporting memory allocation aggregates, with
memReportand the optionsGROUP_BY_METHODorGROUP_BY_STACKTRACE, memory allocations without an associated stacktrace will not be included.Property: org.lwjgl.util.DebugAllocator.fast
Usage: Dynamic -
DEBUG_STACK
Set to true to enable LWJGL's debug mode for theMemoryStack.When using the stack, each frame should be popped in the same method that pushed it. If this symmetry is broken, this mode will report it immediately.
When this option is enabled, a stacktrace is generated on every push or pop to the stack, which may negatively impact performance. If this becomes a serious issue, the JVM option
-XX:MaxJavaStackTraceDepth=d(whered >= 5) can be used to reduce the overhead.Property: org.lwjgl.util.DebugStack
Usage: Static -
DEBUG_FUNCTIONS
When enabled, a warning message will be output toDEBUG_STREAMwhen LWJGL fails to retrieve a function pointer.This option may generate a lot of output and false negatives for functions in unused classes.
This option requires
DEBUGto be enabled.Property: org.lwjgl.util.DebugFunctions
Usage: Static -
ASSIMP_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the AssImp library (org.lwjgl.assimp.libname). -
ASSIMP_DRACO_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the Draco library (org.lwjgl.assimp.draco.libname). -
BGFX_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the BGFX library (org.lwjgl.bgfx.libname). -
EGL_EXPLICIT_INIT
Set this property to false to disable automatic initialization of the EGL library.By default, LWJGL will automatically initialize the EGL library when it is first accessed.
Property: org.lwjgl.egl.explicitInit
Usage: Static -
EGL_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the EGL library (org.lwjgl.egl.libname). -
EGL_EXTENSION_FILTER
Similar toOPENGL_EXTENSION_FILTERfor the EGL library (org.lwjgl.egl.extensionFilter). -
FMOD_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the FMOD Core library (org.lwjgl.fmod.libname). -
FMOD_STUDIO_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the FMOD Studio library (org.lwjgl.fmod.studio.libname). -
FMOD_FSBANK_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the FMOD FSBank library (org.lwjgl.fmod.fsbank.libname). -
FREETYPE_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the FreeType library (org.lwjgl.freetype.libname). -
GLFW_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the GLFW library (org.lwjgl.glfw.libname). -
GLFW_CHECK_THREAD0
macOS only: Set this property to false to disable first thread detection onglfwInit.By default, LWJGL will check if
glfwInitis called on the first thread of the process. If not, anIllegalStateExceptionwill be thrown.The JVM can be launched with
-XstartOnFirstThreadto make the main thread the first thread of the process.Property: org.lwjgl.glfw.checkThread0
Usage: Dynamic -
HARFBUZZ_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the HarfBuzz library (org.lwjgl.harfbuzz.libname).The default LWJGL HarfBuzz build does not include FreeType support and the
hb_ft_*functions will not be available. However, LWJGL's FreeType build includes HarfBuzz and exports its full API. When working with both HarfBuzz and FreeType, the HarfBuzz bindings can be made to use FreeType's shared library, with one of the following ways:- launch the JVM with
-Dorg.lwjgl.harfbuzz.libname=freetype - run
Configuration.HARFBUZZ_LIBRARY_NAME.set("freetype") - run
Configuration.HARFBUZZ_LIBRARY_NAME.set(FreeType.getLibrary())- recommended
The
org.lwjgl.harfbuzz.nativesmodule is not necessary when enabling the above.Property: org.lwjgl.harfbuzz.libname
Type: String or aSharedLibraryinstance
Usage: Dynamic - launch the JVM with
-
HWLOC_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the hwloc library (org.lwjgl.hwloc.libname). -
JAWT_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the jawt library (org.lwjgl.system.jawt.libname). -
JEMALLOC_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the jemalloc library (org.lwjgl.system.jemalloc.libname). -
KTX_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the KTX library (org.lwjgl.ktx.libname). -
LLVM_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the LLVM library (org.lwjgl.llvm.libname). -
LLVM_CLANG_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the LLVM/Clang Library (org.lwjgl.llvm.clang.libname). -
LLVM_LTO_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the LLVM/LTO library (org.lwjgl.llvm.clang.libname). -
NFD_LINUX_PORTAL
Set to true to enable NativeFileDialog's XDG Desktop Portal backend on Linux.Property: org.lwjgl.nfd.linux.portal
Usage: Static -
ODBC_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the ODBC library (org.lwjgl.odbc.libname). -
OPENAL_EXPLICIT_INIT
Similar toEGL_EXPLICIT_INITfor the OpenAL library (org.lwjgl.openal.explicitInit). -
OPENAL_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the OpenAL library (org.lwjgl.openal.libname). -
OPENAL_EXTENSION_FILTER
Similar toOPENGL_EXTENSION_FILTERfor the OpenAL library (org.lwjgl.openal.extensionFilter). -
OPENCL_EXPLICIT_INIT
Similar toEGL_EXPLICIT_INITfor the OpenCL library (org.lwjgl.opencl.explicitInit). -
OPENCL_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the OpenCL library (org.lwjgl.opencl.libname). -
OPENCL_EXTENSION_FILTER
Similar toOPENGL_EXTENSION_FILTERfor the OpenCL library (org.lwjgl.opencl.extensionFilter). -
OPENGL_EXPLICIT_INIT
Similar toEGL_EXPLICIT_INITfor the OpenGL library (org.lwjgl.opengl.explicitInit). -
OPENGL_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the OpenGL library (org.lwjgl.opengl.libname). -
OPENGL_OSMESA_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the OSMesa library (org.lwjgl.opengl.osmesa.libname). -
OPENGL_MAXVERSION
Can be used to limit the maximum available OpenGL version.This can be useful to ensure that an application has not accidentally used features only available in a higher OpenGL version. When set programmatically, it can also be an
APIUtil.APIVersioninstance.Property: org.lwjgl.opengl.maxVersion
Type: String (M.n) or anAPIUtil.APIVersioninstance
Usage: Static -
OPENGL_EXTENSION_FILTER
Can be used to disable specific extensions.This can be useful to ensure that an application behaves correctly with or without an extension. Supported values:
- comma-delimited string - A list of extension names to disable.
- <classpath> - A class that implements the
Predicate<String>interface. It will be instantiated using reflection.
When set programmatically, it can also be:
- a
List<String>instance - A list of extension names to disable. - a
Predicate<String> instance - A predicate that accepts an extension name and returns true if it should be disabled.
-
OPENGL_CONTEXT_API
Defines the API that manages OpenGL contexts.Supported values:
- native - context management is provided by the native platform.
- EGL - context management is provided by EGL.
- OSMesa - context management is provided by OSMesa.
If this option is not set, LWJGL will attempt to use the native platform API. If the native platform API is not available, it will attempt to use EGL and then OSMesa.
If this option is not set and Wayland is detected (
XDG_SESSION_TYPE == "wayland"andWAYLAND_DISPLAYis defined) on Linux and FreeBSD, then EGL becomes the default choice.Property: org.lwjgl.opengl.contextAPI
Type: String
Usage: Dynamic - native - context management is provided by the native platform.
-
OPENGLES_EXPLICIT_INIT
Similar toEGL_EXPLICIT_INITfor the OpenGL ES library (org.lwjgl.opengles.explicitInit). -
OPENGLES_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the OpenGL ES library (org.lwjgl.opengles.libname). -
OPENGLES_MAXVERSION
Similar toOPENGL_MAXVERSIONfor the OpenGL ES library (org.lwjgl.opengles.maxVersion). -
OPENGLES_EXTENSION_FILTER
Similar toOPENGL_EXTENSION_FILTERfor the OpenGL ES library (org.lwjgl.opengles.extensionFilter). -
OPENGLES_CONTEXT_API
Defines the API that manages OpenGL ES contexts.Supported values:
- EGL - context management is provided by EGL.
- native - context management is provided by the native platform.
- OSMesa - context management is provided by OSMesa.
If this option is not set, LWJGL will first attempt to use EGL. If EGL is not available, it will attempt to use the native platform API and then OSMesa.
Property: org.lwjgl.opengl.contextAPI
Type: String
Usage: Dynamic -
OPENXR_EXPLICIT_INIT
Similar toEGL_EXPLICIT_INITfor the OpenXR library (org.lwjgl.openxr.explicitInit). -
OPENXR_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the OpenXR library (org.lwjgl.openxr.libname). -
OPUS_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the Opus library (org.lwjgl.opus.libname). -
SDL_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the SDL library (org.lwjgl.sdl.libname). -
SHADERC_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the Shaderc libshaderc library (org.lwjgl.shaderc.libname). -
SPVC_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the SPIRV-Cross library (org.lwjgl.spvc.libname). -
VULKAN_EXPLICIT_INIT
Similar toEGL_EXPLICIT_INITfor the Vulkan library (org.lwjgl.vulkan.explicitInit). -
VULKAN_LIBRARY_NAME
Similar toLIBRARY_NAMEfor the Vulkan library (org.lwjgl.vulkan.libname).
-
-
Method Details
-
EGL_LIBRARY_NAME_DEFAULTS
Returns the default EGL library names for the current platform. -
OPENGL_LIBRARY_NAME_DEFAULTS
Returns the default OpenGL library names for the current platform. -
OPENGL_OSMESA_LIBRARY_NAME_DEFAULTS
Returns the default OSMEsa library names for the current platform. -
OPENGLES_LIBRARY_NAME_DEFAULTS
Returns the default OpenGL ES library names for the current platform. -
getProperty
-
set
Sets the option value.- Parameters:
value- the value to set
-
get
Returns the option value.If the option value has not been set, null will be returned.
-
get
Returns the option value.If the option value has not been set, the specified default value will be returned.
- Parameters:
defaultValue- the default value
-