Package com.jme3.system.lwjgl
Class LwjglContext
java.lang.Object
com.jme3.system.lwjgl.LwjglContext
- All Implemented Interfaces:
JmeContext
- Direct Known Subclasses:
LwjglAbstractDisplay
,LwjglOffscreenBuffer
,LwjglWindow
A LWJGL implementation of a graphics context.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.jme3.system.JmeContext
JmeContext.Type
-
Field Summary
Modifier and TypeFieldDescriptionprotected LwjglContext
protected LwjglPlatform
protected AtomicBoolean
protected final Object
protected JInputJoyInput
protected LwjglKeyInput
protected SystemListener
protected LwjglMouseInput
protected AtomicBoolean
protected Renderer
protected AppSettings
protected static final String
protected Timer
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
create()
protected org.lwjgl.opengl.ContextAttribs
void
destroy()
protected int
determineMaxSamples
(int requestedSamples) int
Returns the height of the framebuffer.int
Returns the width of the framebuffer.protected int[]
getGLVersion
(String renderer) protected int
Accesses the listener that receives events related to this context.getTimer()
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 void
Initializes the LWJGL renderer and input for the first time.protected void
void
void
boolean
boolean
protected void
protected void
protected void
Reinitializes the relevant details of the context.void
setSettings
(AppSettings settings) void
setSystemListener
(SystemListener listener) Sets the listener that will receive events relating to context creation, update, and destroy.protected void
waitFor
(boolean createdVal) 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
create, destroy, getJoyInput, getKeyInput, getMouseInput, getTouchInput, getType, restart, setAutoFlushFrames, setTitle
-
Field Details
-
THREAD_NAME
- See Also:
-
created
-
renderable
-
createdLock
-
settings
-
renderer
-
keyInput
-
mouseInput
-
joyInput
-
timer
-
listener
-
clPlatform
-
clContext
-
-
Constructor Details
-
LwjglContext
public LwjglContext()
-
-
Method Details
-
getSystemListener
Accesses the listener that receives events related to this context.- Specified by:
getSystemListener
in interfaceJmeContext
- Returns:
- the pre-existing instance
-
setSystemListener
Description copied from interface:JmeContext
Sets the listener that will receive events relating to context creation, update, and destroy.- Specified by:
setSystemListener
in interfaceJmeContext
- Parameters:
listener
- the desired listener
-
printContextInitInfo
protected void printContextInitInfo() -
getGLVersion
-
createContextAttribs
protected org.lwjgl.opengl.ContextAttribs createContextAttribs() -
determineMaxSamples
protected int determineMaxSamples(int requestedSamples) -
loadNatives
protected void loadNatives() -
getNumSamplesToUse
protected int getNumSamplesToUse() -
reinitContext
protected void reinitContext()Reinitializes the relevant details of the context. For internal use only. -
initContextFirstTime
protected void initContextFirstTime()Initializes the LWJGL renderer and input for the first time. For internal use only. -
initOpenCL
protected void initOpenCL() -
internalDestroy
public void internalDestroy() -
internalCreate
public void internalCreate() -
create
public void create() -
destroy
public void destroy() -
waitFor
protected void waitFor(boolean createdVal) -
isCreated
public boolean isCreated()- Specified by:
isCreated
in interfaceJmeContext
- Returns:
- True if the context has been created but not yet destroyed.
-
isRenderable
public boolean isRenderable()- Specified by:
isRenderable
in interfaceJmeContext
- Returns:
- True if the context contains a valid render surface,
if any of the rendering methods in
Renderer
are called while this isfalse
, then the result is undefined.
-
setSettings
- Specified by:
setSettings
in interfaceJmeContext
- Parameters:
settings
- the display settings to use for the created context. If the context has already been created, thenrestart()
must be called for the changes to be applied.
-
getSettings
- Specified by:
getSettings
in interfaceJmeContext
- Returns:
- The current display settings. Note that they might be different from the ones set with setDisplaySettings() if the context was restarted or the settings changed internally.
-
getRenderer
- Specified by:
getRenderer
in interfaceJmeContext
- Returns:
- The renderer for this context, or null if not created yet.
-
getTimer
- Specified by:
getTimer
in interfaceJmeContext
- Returns:
- The timer for this context, or null if not created yet.
-
getOpenCLContext
- Specified by:
getOpenCLContext
in interfaceJmeContext
- Returns:
- The OpenCL context if available.
-
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
-