From f61267e803dd4ac9d7930e33d21b29ad6bcd64f2 Mon Sep 17 00:00:00 2001 From: Domenic Cassisi Date: Tue, 16 Jan 2018 08:17:57 +0100 Subject: [PATCH 1/3] Adds missing key code for Print Screen (#682) (#806) * Adds missing key code for Print Screen and update javadoc (#682) --- jme3-core/src/main/java/com/jme3/input/KeyInput.java | 10 ++++++++++ .../src/main/java/com/jme3/input/awt/AwtKeyInput.java | 4 ++++ 2 files changed, 14 insertions(+) diff --git a/jme3-core/src/main/java/com/jme3/input/KeyInput.java b/jme3-core/src/main/java/com/jme3/input/KeyInput.java index 9ad78ed7b..8a0f72245 100644 --- a/jme3-core/src/main/java/com/jme3/input/KeyInput.java +++ b/jme3-core/src/main/java/com/jme3/input/KeyInput.java @@ -445,6 +445,16 @@ public interface KeyInput extends Input { * (J3100). */ public static final int KEY_UNLABELED = 0x97; + /** + * PrtScr key. + * Note: for use on keyboards with a PrtScr key that is + * separate from the SysRq key. Most keyboards combine + * SysRq and PrtScr so if the intent is to actually + * capture the user's desire to capture the screen + * then SysRq is the most likely scan code. + * Use PrtScr to catch the rest (laptops, mini-keyboards, etc.) + */ + public static final int KEY_PRTSCR = 0x9A; /** * Enter key (num pad). */ diff --git a/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java b/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java index ac4ff75eb..b27e29035 100644 --- a/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java +++ b/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java @@ -371,6 +371,8 @@ public class AwtKeyInput implements KeyInput, KeyListener { return KeyEvent.VK_ALT; //todo: location left case KEY_RMENU: return KeyEvent.VK_ALT; //todo: location right + case KEY_PRTSCR: + return KeyEvent.VK_PRINTSCREEN; } logger.log(Level.WARNING, "unsupported key:{0}", key); return 0x10000 + key; @@ -600,6 +602,8 @@ public class AwtKeyInput implements KeyInput, KeyListener { return KEY_LMENU; //Left vs. Right need to improve case KeyEvent.VK_META: return KEY_RCONTROL; + case KeyEvent.VK_PRINTSCREEN: + return KEY_PRTSCR; } logger.log( Level.WARNING, "unsupported key:{0}", key); From 7bcd11e921528cfb0ed0e38270ab34ec0fb64535 Mon Sep 17 00:00:00 2001 From: MeFisto94 Date: Mon, 15 Jan 2018 17:18:21 +0100 Subject: [PATCH 2/3] Fix Shadow Filters not having a default constructor and hence not being deserializable. --- .../java/com/jme3/shadow/AbstractShadowFilter.java | 6 ++++++ .../com/jme3/shadow/DirectionalLightShadowFilter.java | 10 ++++++++++ .../java/com/jme3/shadow/PointLightShadowFilter.java | 10 ++++++++++ .../java/com/jme3/shadow/PointLightShadowRenderer.java | 5 +++-- .../main/java/com/jme3/shadow/PssmShadowFilter.java | 10 ++++++++++ .../java/com/jme3/shadow/SpotLightShadowFilter.java | 10 ++++++++++ 6 files changed, 49 insertions(+), 2 deletions(-) diff --git a/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java index ae2e3c120..7a2f4ecbd 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java @@ -62,6 +62,12 @@ public abstract class AbstractShadowFilter ext protected T shadowRenderer; protected ViewPort viewPort; + /** + * used for serialization + */ + protected AbstractShadowFilter(){ + } + /** * Abstract class constructor * diff --git a/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java index eb58a2ef8..2d745b3fe 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java @@ -56,6 +56,16 @@ import java.io.IOException; */ public class DirectionalLightShadowFilter extends AbstractShadowFilter { + /** + * Used for serialzation. + * Use DirectionalLightShadowFilter#DirectionalLightShadowFilter + * (AssetManager assetManager, int shadowMapSize, int nbSplits) + * instead. + */ + public DirectionalLightShadowFilter() { + super(); + } + /** * Creates a DirectionalLightShadowFilter Shadow Filter More info on the * technique at { + /** + * Used for serialization. + * Use PointLightShadowFilter#PointLightShadowFilter(AssetManager + * assetManager, int shadowMapSize) + * instead. + */ + public PointLightShadowFilter() { + super(); + } + /** * Creates a PointLightShadowFilter * diff --git a/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java index 407f72367..a16c4353b 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java +++ b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java @@ -63,9 +63,10 @@ public class PointLightShadowRenderer extends AbstractShadowRenderer { private Geometry[] frustums = null; /** - * Used for serialization use - * PointLightShadowRenderer"PointLightShadowRenderer(AssetManager + * Used for serialization. + * Use PointLightShadowRenderer#PointLightShadowRenderer(AssetManager * assetManager, int shadowMapSize) + * instead. */ public PointLightShadowRenderer() { super(); diff --git a/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java index f2a32ba73..1d38c67c5 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java @@ -69,6 +69,16 @@ public class PssmShadowFilter extends Filter { private PssmShadowRenderer pssmRenderer; private ViewPort viewPort; + /** + * Used for serialization. + * Use PssmShadowFilter#PssmShadowFilter(AssetManager + * assetManager, int size, int nbSplits) + * instead. + */ + public PssmShadowFilter() { + super(); + } + /** * Creates a PSSM Shadow Filter * More info on the technique at http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html diff --git a/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java index 10130a9bc..85f235d8b 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java @@ -56,6 +56,16 @@ import java.io.IOException; */ public class SpotLightShadowFilter extends AbstractShadowFilter { + /** + * Used for serialization. + * Use SpotLightShadowFilter#SpotLightShadowFilter(AssetManager assetManager, + * int shadowMapSize) + * instead. + */ + public SpotLightShadowFilter() { + super(); + } + /** * Creates a SpotLight Shadow Filter * From 3594a87134ea2ed19edfaa5f71626ef1d1ad7b99 Mon Sep 17 00:00:00 2001 From: demoth Date: Mon, 15 Jan 2018 21:59:04 +0300 Subject: [PATCH 3/3] Fix #694 Reduce the logging level for OpenCLObjectManager --- .../src/main/java/com/jme3/opencl/OpenCLObjectManager.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java b/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java index e664c90c2..feed31dec 100644 --- a/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java +++ b/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java @@ -43,8 +43,8 @@ import java.util.logging.Logger; */ public class OpenCLObjectManager { private static final Logger LOG = Logger.getLogger(OpenCLObjectManager.class.getName()); - private static final Level LOG_LEVEL1 = Level.FINER; - private static final Level LOG_LEVEL2 = Level.FINE; + private static final Level LOG_LEVEL1 = Level.FINEST; + private static final Level LOG_LEVEL2 = Level.FINER; private static final OpenCLObjectManager INSTANCE = new OpenCLObjectManager(); private OpenCLObjectManager() {}