2
0
Эх сурвалжийг харах

Deprecate the jme3-vr module

Richard Tingle 1 жил өмнө
parent
commit
7d6ed48cb3

+ 2 - 1
docs/modules/core/nav.adoc

@@ -71,4 +71,5 @@
 ** xref:ui/hud.adoc[Head-Up Display (HUD)]
 ** xref:ui/hud.adoc[Head-Up Display (HUD)]
 * Virtual Reality
 * Virtual Reality
 ** xref:vr/virtualreality.adoc[Virtual Reality]
 ** xref:vr/virtualreality.adoc[Virtual Reality]
-** xref:vr/virtualrealitycontrollers.adoc[Virtual Reality Controllers]
+** xref:vr/legacyOpenVr.adoc[Virtual Reality Legacy Support]
+** xref:vr/virtualrealitycontrollers.adoc[Virtual Reality Legacy Controller Support]

+ 105 - 0
docs/modules/core/pages/vr/legacyOpenVr.adoc

@@ -0,0 +1,105 @@
+= Virtual Reality Legacy support
+:revnumber: 2.0
+:revdate: 2020/07/27
+
+
+== Introduction
+
+The jMonkeyEngine module jme3-vr is deprecated and will be removed in a future version. This documents that deprecated functionality.
+
+jMonkeyEngine 3 supports several VR specifications. The most modern of those is OpenVR, which is currently a widely supported standard. However, vendors are beginning to move towards OpenXR as a fully open cross-platform standard. OpenXR is available with jMonkeyEngine via xref:contributions:vr/topic_contributions_vr.adoc[user contributed virtual reality libraries].
+
+The known supported systems are:
+
+HTC Vive and systems supporting SteamVR/OpenVR
+
+Native Oculus Rift support (and through SteamVR)
+
+Oculus Quest 2 (through SteamVR with Virtual Desktop)
+
+Razer HDK and systems supporting OSVR
+
+Google Cardboard / GoogleVR
+
+Two implementations exist for OpenVR. A community maintained JNA based binding and LWJGL's JNI based.
+
+To use the JNA based bindings, put:
+
+    settings.put(VRConstants.SETTING_VRAPI, VRConstants.SETTING_VRAPI_OPENVR_VALUE);
+
+in your settings. To use LWJGL, instead put:
+
+    settings.put(VRConstants.SETTING_VRAPI, VRConstants.SETTING_VRAPI_OPENVR_LWJGL_VALUE);
+
+Note that the LWJGL bindings require LWJGL3 (jme3-lwjgl3) to be used.
+
+== Required dependencies
+
+    - org.jmonkeyengine:jme3-core
+    - org.jmonkeyengine:jme3-lwjgl3
+    - org.jmonkeyengine:jme3-vr
+
+== Sample Application
+
+[source,java]
+----
+public class Main extends SimpleApplication {
+
+    public static void main(String[] args) {
+        AppSettings settings = new AppSettings(true);
+        settings.put(VRConstants.SETTING_VRAPI, VRConstants.SETTING_VRAPI_OPENVR_LWJGL_VALUE);
+        settings.put(VRConstants.SETTING_ENABLE_MIRROR_WINDOW, true);
+
+        VREnvironment env = new VREnvironment(settings);
+        env.initialize();
+
+    	// Checking if the VR environment is well initialized
+    	// (access to the underlying VR system is effective, VR devices are detected).
+    	if (env.isInitialized()){
+            VRAppState vrAppState = new VRAppState(settings, env);
+            vrAppState.setMirrorWindowSize(1024, 800);
+            Main app = new Main(vrAppState);
+            app.setLostFocusBehavior(LostFocusBehavior.Disabled);
+            app.setSettings(settings);
+            app.setShowSettings(false);
+            app.start();
+        }
+    }
+
+    public Main(AppState... appStates) {
+        super(appStates);
+    }
+
+    @Override
+    public void simpleInitApp() {
+        Box b = new Box(1, 1, 1);
+        Geometry geom = new Geometry("Box", b);
+
+        Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
+        mat.setColor("Color", ColorRGBA.Blue);
+        geom.setMaterial(mat);
+
+        rootNode.attachChild(geom);
+    }
+
+    @Override
+    public void simpleUpdate(float tpf) {
+        //TODO: add update code
+    }
+
+    @Override
+    public void simpleRender(RenderManager rm) {
+        //TODO: add render code
+    }
+}
+----
+Project source: https://github.com/neph1/VRSampleApplication
+
+
+== Google Cardboard VR SDK 1.0 integration
+gvr-android-jme (https://github.com/nordfalk/gvr-android-jme)
+
+
+== Legacy
+The following projects are not up to date, but may provide functionality not found in the other packages.
+Google Cardboard up to version 0.6: https://github.com/neph1/jme-cardboard

+ 6 - 98
docs/modules/core/pages/vr/virtualreality.adoc

@@ -1,104 +1,12 @@
 = Virtual Reality
 = Virtual Reality
-:revnumber: 2.0
-:revdate: 2020/07/27
-
-Please see this link:https://hub.jmonkeyengine.org/t/official-vr-module/37830/67[forum post] for additional information on JME Official VR module.
+:revnumber: 3.0
+:revdate: 2024/01/01
 
 
 == Introduction
 == Introduction
 
 
-jMonkeyEngine 3 supports several VR specifications. The most modern of those is OpenVR, which is currently a widely supported standard. However, vendors are beginning to move towards OpenXR as a fully open cross-platform standard. OpenXR is available with jMonkeyEngine via xref:contributions:vr/topic_contributions_vr.adoc[user contributed virtual reality libraries].
-
-The known supported systems are:
-
-HTC Vive and systems supporting SteamVR/OpenVR
-
-Native Oculus Rift support (and through SteamVR)
-
-Oculus Quest 2 (through SteamVR with Virtual Desktop)
-
-Razer HDK and systems supporting OSVR
-
-Google Cardboard / GoogleVR
-
-Two implementations exist for OpenVR. A community maintained JNA based binding and LWJGL's JNI based.
-
-To use the JNA based bindings, put:
-
-    settings.put(VRConstants.SETTING_VRAPI, VRConstants.SETTING_VRAPI_OPENVR_VALUE);
-
-in your settings. To use LWJGL, instead put:
-
-    settings.put(VRConstants.SETTING_VRAPI, VRConstants.SETTING_VRAPI_OPENVR_LWJGL_VALUE);
-
-Note that the LWJGL bindings require LWJGL3 (jme3-lwjgl3) to be used.
-
-== Required dependencies
-
-    - org.jmonkeyengine:jme3-core
-    - org.jmonkeyengine:jme3-lwjgl3
-    - org.jmonkeyengine:jme3-vr
-
-== Sample Application
-
-[source,java]
-----
-public class Main extends SimpleApplication {
-
-    public static void main(String[] args) {
-        AppSettings settings = new AppSettings(true);
-        settings.put(VRConstants.SETTING_VRAPI, VRConstants.SETTING_VRAPI_OPENVR_LWJGL_VALUE);
-        settings.put(VRConstants.SETTING_ENABLE_MIRROR_WINDOW, true);
-
-        VREnvironment env = new VREnvironment(settings);
-        env.initialize();
-
-    	// Checking if the VR environment is well initialized
-    	// (access to the underlying VR system is effective, VR devices are detected).
-    	if (env.isInitialized()){
-            VRAppState vrAppState = new VRAppState(settings, env);
-            vrAppState.setMirrorWindowSize(1024, 800);
-            Main app = new Main(vrAppState);
-            app.setLostFocusBehavior(LostFocusBehavior.Disabled);
-            app.setSettings(settings);
-            app.setShowSettings(false);
-            app.start();
-        }
-    }
-
-    public Main(AppState... appStates) {
-        super(appStates);
-    }
-
-    @Override
-    public void simpleInitApp() {
-        Box b = new Box(1, 1, 1);
-        Geometry geom = new Geometry("Box", b);
-
-        Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
-        mat.setColor("Color", ColorRGBA.Blue);
-        geom.setMaterial(mat);
-
-        rootNode.attachChild(geom);
-    }
-
-    @Override
-    public void simpleUpdate(float tpf) {
-        //TODO: add update code
-    }
-
-    @Override
-    public void simpleRender(RenderManager rm) {
-        //TODO: add render code
-    }
-}
-----
-Project source: https://github.com/neph1/VRSampleApplication
-
-
-== Google Cardboard VR SDK 1.0 integration
-gvr-android-jme (https://github.com/nordfalk/gvr-android-jme)
-
+Virtual reality is well-supported in jMonkeyEngine 3. The VR support is provided by xref:contributions:vr/topic_contributions_vr.adoc[user contributed virtual reality libraries], for
+example xref:contributions:contributions.adoc#tamarin-openxr[Tamarin OpenXR].
 
 
 == Legacy
 == Legacy
-The following projects are not up to date, but may provide functionality not found in the other packages.
-Google Cardboard up to version 0.6: https://github.com/neph1/jme-cardboard
+
+OpenVr support (and other old virtual reality standards) are documented at xref:vr/legacyOpenVr.adoc[Virtual Reality Legacy support] but will be removed in a future release.

+ 1 - 3
docs/modules/core/pages/vr/virtualrealitycontrollers.adoc

@@ -1,9 +1,7 @@
-= Virtual Reality Controllers
+= Virtual Reality Controllers Legacy Support
 :revnumber: 1.0
 :revnumber: 1.0
 :revdate: 2021/12/29
 :revdate: 2021/12/29
 
 
-Having successfully seen a VR cube in the xref:vr/virtualreality.adoc[Virtual reality hello world] a common next step is to put hands in the world so players can start interacting.
-
 == Where are we, what are we pointing at
 == Where are we, what are we pointing at
 
 
 Be aware that the controllers positions and rotations are in world coordinates, not relative to the camera
 Be aware that the controllers positions and rotations are in world coordinates, not relative to the camera