Class RenderModeOpenXR
java.lang.Object
gaiasky.render.process.RenderModeAbstract
gaiasky.render.process.RenderModeOpenXR
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable, IRenderMode, XrRenderer
Render mode for Gaia Sky VR via OpenXR.
-
Field Summary
FieldsModifier and TypeFieldDescriptioncom.badlogic.gdx.utils.Array<com.badlogic.ashley.core.Entity> Fields inherited from class RenderModeAbstract
extendViewport, rc, resultBuffer -
Constructor Summary
ConstructorsConstructorDescriptionRenderModeOpenXR(Scene scene, XrDriver xrDriver, ExtSpriteBatch spriteBatch) -
Method Summary
Modifier and TypeMethodDescriptionvoiddispose()Map<XrControllerDevice, com.badlogic.ashley.core.Entity> voidrender(ISceneRenderer sgr, ICamera camera, double t, int rw, int rh, int tw, int th, com.badlogic.gdx.graphics.glutils.FrameBuffer fb, IPostProcessor.PostProcessBean ppb) Renders the scene.voidrenderMirrorToDesktop(int textureHandle) Renders a mirror of the VR view to the desktop window.voidrenderOpenXRView(org.lwjgl.openxr.XrCompositionLayerProjectionView layerView, org.lwjgl.openxr.XrSwapchainImageOpenGLKHR swapChainImage, com.badlogic.gdx.graphics.glutils.FrameBuffer frameBuffer, int viewIndex) Executed for each eye every cycle.voidresize(int rw, int rh, int tw, int th) Resizes the assets of this renderer to the given new sizeMethods inherited from class RenderModeAbstract
getRenderingContext, getResultBuffer, postProcessCapture, postProcessRender, sendOrientationUpdateMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface IRenderMode
getRenderingContext, getResultBuffer
-
Field Details
-
controllerObjects
public com.badlogic.gdx.utils.Array<com.badlogic.ashley.core.Entity> controllerObjects
-
-
Constructor Details
-
RenderModeOpenXR
-
-
Method Details
-
render
public void render(ISceneRenderer sgr, ICamera camera, double t, int rw, int rh, int tw, int th, com.badlogic.gdx.graphics.glutils.FrameBuffer fb, IPostProcessor.PostProcessBean ppb) Description copied from interface:IRenderModeRenders the scene.- Specified by:
renderin interfaceIRenderMode- Parameters:
sgr- The scene renderer object.camera- The camera.t- The time in seconds since the start.rw- The width of the buffer.rh- The height of the buffer.tw- The final target width, usually of the screen.th- The final target height, usually of the screen.fb- The frame buffer, if any.ppb- The post process bean.
-
renderOpenXRView
public void renderOpenXRView(org.lwjgl.openxr.XrCompositionLayerProjectionView layerView, org.lwjgl.openxr.XrSwapchainImageOpenGLKHR swapChainImage, com.badlogic.gdx.graphics.glutils.FrameBuffer frameBuffer, int viewIndex) Description copied from interface:XrRendererExecuted for each eye every cycle.- Specified by:
renderOpenXRViewin interfaceXrRenderer- Parameters:
layerView- The layer view.swapChainImage- The swap-chain image.frameBuffer- The frame buffer to draw to.viewIndex- The view index.
-
renderMirrorToDesktop
public void renderMirrorToDesktop(int textureHandle) Renders a mirror of the VR view to the desktop window. This should be called after the eye loop but before xrEndFrame.- Specified by:
renderMirrorToDesktopin interfaceXrRenderer- Parameters:
textureHandle- The OpenGL texture handle from the OpenXR swapchain (usually eye 0).
-
resize
public void resize(int rw, int rh, int tw, int th) Description copied from interface:IRenderModeResizes the assets of this renderer to the given new size- Specified by:
resizein interfaceIRenderMode- Parameters:
rw- New render buffer width.rh- New render buffer height.tw- New target (screen) width.th- New target (screen) height.
-
getXRControllerToModel
-
dispose
public void dispose()- Specified by:
disposein interfacecom.badlogic.gdx.utils.Disposable
-