static public void load () {
GdxNativesLoader.load();
if (GdxNativesLoader.disableNativesLoading) return;
if (!load) return;
SharedLibraryLoader loader = new SharedLibraryLoader();
File nativesDir = null;
try {
if (isWindows) {
nativesDir = loader.extractFile(is64Bit ? "lwjgl64.dll" : "lwjgl.dll", null).getParentFile();
if (!LwjglApplicationConfiguration.disableAudio)
loader.extractFile(is64Bit ? "OpenAL64.dll" : "OpenAL32.dll", nativesDir.getName());
} else if (isMac) {
File extractedFile = loader.extractFile("liblwjgl.jnilib", null);
nativesDir = extractedFile.getParentFile();
new FileHandle(extractedFile).copyTo(new FileHandle(new File(nativesDir, "liblwjgl.dylib")));
if (!LwjglApplicationConfiguration.disableAudio) loader.extractFile("openal.dylib", nativesDir.getName());
} else if (isLinux) {
nativesDir = loader.extractFile(is64Bit ? "liblwjgl64.so" : "liblwjgl.so", null).getParentFile();
if (!LwjglApplicationConfiguration.disableAudio)
loader.extractFile(is64Bit ? "libopenal64.so" : "libopenal.so", nativesDir.getName());
}
} catch (Throwable ex) {
throw new GdxRuntimeException("Unable to extract LWJGL natives.", ex);
}
System.setProperty("org.lwjgl.librarypath", nativesDir.getAbsolutePath());