LWJGL v3.1.1 Release Notes
Release Date: 2016-12-27 // over 7 years ago-
๐ Changes since
3.1.0
:Bindings
- โ Added Assimp bindings.
- โก๏ธ bgfx: Updated to API version 34 (up from 28)
- โก๏ธ jemalloc: Updated to version 4.4.0 (up from 4.2.1)
- โก๏ธ LibOVR: Updated to version 1.10.0 (up from 1.9.0)
- โก๏ธ nuklear: Updated to version 1.191 (up from 1.17)
- โก๏ธ Vulkan: Updated to version 1.0.38 (up from 1.0.32)
- โก๏ธ stb: Updated stb_image to 2.13 (up from 2.12)
- โก๏ธ tinyfiledialogs: Updated to version 2.7.2 (up from 2.6.1)
๐ Improvements
- ๐จ Refactored function pointer lookups in OpenAL, OpenGL and OpenGL ES.
- Significant reduction in bytecode size (and corresponding JIT code).
- No thread-local lookup in GL and GLES, even with incompatible contexts.
- Removed obsolete thread-local and capabilities state
Configuration
options.
- ๐ง Linux: All natives are now built with GCC 6.2 (up from 4.8)
- โ Loader: If
jemalloc
initialization fails andorg.lwjgl.system.allocator
has not been set, a simple warning is now shown instead of an exception. - Structs: Added bound checks to element accessors of array members.
- Generator: Validation is now required for all data pointer parameters. If validation is not possible, such parameters must be marked as potentially unsafe.
- The SHA-1 hash of shared libraries is now included in the corresponding
natives
JAR files. - ๐ The upstream git revision used to build shared libraries is now included in the corresponding
natives
JAR files.
๐ Fixes
- ๐ Fixed loader diagnostics when
System.loadLibrary
fails. - ๐ Fixed setters of struct members with optional AutoSize. (#255)
- ๐ Fixed
MemoryUtil.memRealloc
to returnnull
when the allocation fails. - Vulkan: Function pointer loading of disabled extensions is now skipped.
- Generator:
binding.DISABLE_CHECKS
is now respected in structs.
๐ฅ Breaking Changes
- ๐ macOS: LWJGL now requires macOS 10.9/Mavericks or later (up from 10.7/Lion)
- ๐ A small number of method signatures have changed because of auto-size transformations that were missing in previous releases.
- NanoVG: Text functions with an
end
pointer to the end of the string are now auto-size transformed. Buffers passed to them should not include a null-terminating byte. - โ Added
LibC
prefix to all class names in thelibc
bindings, to avoid conflicts with standard Java classes (Locale
,String
, etc.) - OpenGL and OpenGL ES now come with native libraries (
lwjgl_opengl
andlwjgl_opengles
respectively). - โ Removed
MemoryUtil.memSetupBuffer
.