LWJGL 3.1.0 released

Just a heads up to a new release of LWJGL. The new changes and additions look cool :slight_smile:


The download web app is awesome!


Hopefully jme will get something like this!

It’s nice and all but who downloads dependencies manually like this these days.

Fab news about the new release though :smiley:

Nobody, in fact :slight_smile:


There is only a small number of changes required to make jMonkeyEngine compile with LWJGL 3.1.0:

--- a/jme3-lwjgl3/build.gradle
+++ b/jme3-lwjgl3/build.gradle
@@ -2,7 +2,7 @@ if (!hasProperty('mainClass')) {
     ext.mainClass = ''
-def lwjglVersion = '3.0.0'
+def lwjglVersion = '3.1.0'
 sourceCompatibility = '1.8'
@@ -11,7 +11,8 @@ dependencies {
     compile project(':jme3-desktop')
     compile "org.lwjgl:lwjgl:${lwjglVersion}"
-    compile "org.lwjgl:lwjgl-platform:${lwjglVersion}:natives-windows"
-    compile "org.lwjgl:lwjgl-platform:${lwjglVersion}:natives-linux"
-    compile "org.lwjgl:lwjgl-platform:${lwjglVersion}:natives-osx"
+    compile "org.lwjgl:lwjgl-glfw:${lwjglVersion}"
+    compile "org.lwjgl:lwjgl-openal:${lwjglVersion}"
+    compile "org.lwjgl:lwjgl-opencl:${lwjglVersion}"
+    compile "org.lwjgl:lwjgl-opengl:${lwjglVersion}"
1 Like

That easy !! :smiley: why core developers not changed JME to lwjgl 3 yet so ??
Interested to check it :slight_smile:
May it break something in core ?

I am sure you are more than welcome to do a pull request on GitHub and contribute to JME yourself :slight_smile:

Can you make a pull request out of this?

I will try to compile it locally and if it was successful i will make a PR. You know, i am a total noob about lwjgl . :blush:

I am completely new to jMonkeyEngine. Although it does compile, it does not mean that it actually runs. Anyone else can feel free to try the patch out and submit a PR once this has been tested.

I could not compile from lwjgl 3.1.0 but i could compile from 3.0.0.

Sorry about misunderstanding … :sweat_smile: It seems JME already works fine with lwjgl3 back end.

To enable it I just added
compile "org.jmonkeyengine:jme3-lwjgl3:3.2.0-SNAPSHOT"
to my project build.gradle and removed
compile "org.jmonkeyengine:jme3-lwjgl:3.2.0-SNAPSHOT".
and game is running fine.

I did not know JME3 LWJGL3 back end is already in a working state. :relaxed:


sounds awesome! does it also run “better”/faster? any issues?

Yep, had some issue in Linux. Not compared performance yet, will do it soon.

1 Like

Finally i could compile and run game with lwjgl 3.1.0 using this snippet in jme3-lwjgl3

build.gradle :

import org.gradle.internal.os.OperatingSystem
if (!hasProperty('mainClass')) {
    ext.mainClass = ''

switch ( OperatingSystem.current() ) {
    case OperatingSystem.WINDOWS:
        project.ext.lwjglNatives = "natives-windows"
    case OperatingSystem.LINUX:
        project.ext.lwjglNatives = "natives-linux"
    case OperatingSystem.MAC_OS:
        project.ext.lwjglNatives = "natives-macos"

project.ext.lwjglVersion = "3.1.0"
sourceCompatibility = '1.8'

repositories {

dependencies {
    compile project(':jme3-core')
    compile project(':jme3-desktop')
    // LWJGL dependencies START
    compile "org.lwjgl:lwjgl:${lwjglVersion}"
    compile "org.lwjgl:lwjgl-glfw:${lwjglVersion}"
    compile "org.lwjgl:lwjgl-jemalloc:${lwjglVersion}"
    compile "org.lwjgl:lwjgl-openal:${lwjglVersion}"
    compile "org.lwjgl:lwjgl-opencl:${lwjglVersion}"
    compile "org.lwjgl:lwjgl-opengl:${lwjglVersion}"
    compile "org.lwjgl:lwjgl-stb:${lwjglVersion}"
    // LWJGL natives
    runtime "org.lwjgl:lwjgl:${lwjglVersion}:${lwjglNatives}"
    runtime "org.lwjgl:lwjgl-glfw:${lwjglVersion}:${lwjglNatives}"
    runtime "org.lwjgl:lwjgl-jemalloc:${lwjglVersion}:${lwjglNatives}"
    runtime "org.lwjgl:lwjgl-openal:${lwjglVersion}:${lwjglNatives}"
    runtime "org.lwjgl:lwjgl-stb:${lwjglVersion}:${lwjglNatives}"
    // LWJGL dependencies END