Package com.jme3.system.lwjgl
Class LwjglWindowVR
java.lang.Object
com.jme3.system.lwjgl.LwjglContextVR
com.jme3.system.lwjgl.LwjglWindowVR
- All Implemented Interfaces:
JmeContext
,Runnable
- Direct Known Subclasses:
LwjglDisplayVR
A wrapper class over the GLFW framework in LWJGL 3.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.jme3.system.JmeContext
JmeContext.Type
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
protected boolean
protected AtomicBoolean
protected final AtomicBoolean
protected boolean
Fields inherited from class com.jme3.system.lwjgl.LwjglContextVR
created, createdLock, joyInput, keyInput, listener, mouseInput, renderable, renderer, settings, THREAD_NAME, timer
-
Constructor Summary
ConstructorDescriptionLwjglWindowVR
(JmeContext.Type type) Create a new wrapper class over the GLFW framework in LWJGL 3. -
Method Summary
Modifier and TypeMethodDescriptionvoid
create
(boolean waitFor) Creates the context and makes it active.protected void
createContext
(AppSettings settings) Apply the settings, changing resolution, etc.protected void
De-initialize in the OpenGL thread.void
destroy
(boolean waitFor) Destroys the context completely, making it inactive.protected void
Destroy the context.int
Returns the height of the framebuffer.int
Returns the width of the framebuffer.getType()
long
Get the window handle.int
Returns the screen X coordinate of the left edge of the content area.int
Returns the screen Y coordinate of the top edge of the content area.protected boolean
Does LWJGL display initialization in the OpenGL threadvoid
restart()
Restart if it's a windowed or full-screen display.void
run()
protected void
runLoop()
execute one iteration of the render loop in the OpenGL threadvoid
setAutoFlushFrames
(boolean enabled) void
Set the title if it's a windowed displayMethods inherited from class com.jme3.system.lwjgl.LwjglContextVR
create, destroy, determineMaxSamples, getNumSamplesToUse, getRenderer, getSettings, getSystemListener, getTimer, initContextFirstTime, internalCreate, internalDestroy, isCreated, isRenderable, isRetinaDisplay, loadNatives, printContextInitInfo, setSettings, setSystemListener, waitFor
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.jme3.system.JmeContext
getOpenCLContext
-
Field Details
-
needClose
-
needRestart
-
wasActive
protected boolean wasActive -
autoFlush
protected boolean autoFlush -
allowSwapBuffers
protected boolean allowSwapBuffers
-
-
Constructor Details
-
LwjglWindowVR
Create a new wrapper class over the GLFW framework in LWJGL 3.- Parameters:
type
- thetype
of the display.
-
-
Method Details
-
getType
- Specified by:
getType
in interfaceJmeContext
- Returns:
- Type.Display or Type.Canvas
-
setTitle
Set the title if it's a windowed display- Specified by:
setTitle
in interfaceJmeContext
- Parameters:
title
- the title to set
-
restart
public void restart()Restart if it's a windowed or full-screen display.- Specified by:
restart
in interfaceJmeContext
-
createContext
Apply the settings, changing resolution, etc.- Parameters:
settings
- the settings to apply when creating the context.
-
destroyContext
protected void destroyContext()Destroy the context. -
create
public void create(boolean waitFor) Description copied from interface:JmeContext
Creates the context and makes it active.- Specified by:
create
in interfaceJmeContext
- Parameters:
waitFor
- If true, will wait until context has initialized.
-
initInThread
protected boolean initInThread()Does LWJGL display initialization in the OpenGL thread -
runLoop
protected void runLoop()execute one iteration of the render loop in the OpenGL thread -
deinitInThread
protected void deinitInThread()De-initialize in the OpenGL thread. -
run
public void run() -
getJoyInput
- Specified by:
getJoyInput
in interfaceJmeContext
- Returns:
- Joystick input implementation. May be null if not available.
-
getMouseInput
- Specified by:
getMouseInput
in interfaceJmeContext
- Returns:
- Mouse input implementation. May be null if not available.
-
getKeyInput
- Specified by:
getKeyInput
in interfaceJmeContext
- Returns:
- Keyboard input implementation. May be null if not available.
-
getTouchInput
- Specified by:
getTouchInput
in interfaceJmeContext
- Returns:
- Touch device input implementation. May be null if not available.
-
setAutoFlushFrames
public void setAutoFlushFrames(boolean enabled) - Specified by:
setAutoFlushFrames
in interfaceJmeContext
- Parameters:
enabled
- If enabled, the context will automatically flush frames to the video card (swap buffers) after an update cycle.
-
destroy
public void destroy(boolean waitFor) Description copied from interface:JmeContext
Destroys the context completely, making it inactive.- Specified by:
destroy
in interfaceJmeContext
- Parameters:
waitFor
- If true, will wait until the context is destroyed fully.
-
getWindowHandle
public long getWindowHandle()Get the window handle.- Returns:
- the window handle as an internal GLFW identifier.
-
getFramebufferHeight
public int getFramebufferHeight()Returns the height of the framebuffer.- Specified by:
getFramebufferHeight
in interfaceJmeContext
- Returns:
- the height (in pixels)
-
getFramebufferWidth
public int getFramebufferWidth()Returns the width of the framebuffer.- Specified by:
getFramebufferWidth
in interfaceJmeContext
- Returns:
- the width (in pixels)
-
getWindowXPosition
public int getWindowXPosition()Returns the screen X coordinate of the left edge of the content area.- Specified by:
getWindowXPosition
in interfaceJmeContext
- Returns:
- the screen X coordinate
-
getWindowYPosition
public int getWindowYPosition()Returns the screen Y coordinate of the top edge of the content area.- Specified by:
getWindowYPosition
in interfaceJmeContext
- Returns:
- the screen Y coordinate
-