|
Aviatrix3D 2.0 Beta 2 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface representing the output of a render pipeline.
The output may be any of the traditional types: pBuffer, screen or memory or any non-traditional type like haptic devices, network streams etc.
Field Summary | |
static int |
ALTERNATE_FRAME_STEREO
The stereo rendering type draws to alternate eyes on each frame. |
static int |
NO_STEREO
The surface will render only non-stereo projection (traditional monoscopic projection policy). |
static int |
QUAD_BUFFER_STEREO
The stereo rendering type to be used should use quad buffered, alternate frame rendering. |
static int |
TWO_CANVAS_STEREO
The stereo rendering uses two canvases - one for each eye. |
Method Summary | |
void |
addGraphicsResizeListener(GraphicsResizeListener l)
Add a resize listener instance to this surface. |
boolean |
getCenterEyeInSurface(int x,
int y,
int layer,
int subLayer,
javax.vecmath.Point3f position)
Get the Center Eye position in surface coordinates. |
boolean |
getPixelLocationInSurface(int x,
int y,
int layer,
int subLayer,
javax.vecmath.Point3f position)
Convert a pixel location to surface coordinates. |
float |
getStereoEyeSeparation()
Get the current eye separation value, defined as the distance from the center axis to one eye. |
int |
getStereoRenderingPolicy()
Get the current stereo rendering policy in use. |
boolean |
getSurfaceToVWorld(int x,
int y,
int layer,
int subLayer,
javax.vecmath.Matrix4f matrix)
Get the surface to VWorld transformation matrix. |
boolean |
isQuadStereoAvailable()
Check to see whether this surface supports Quad buffer stereo rendering. |
boolean |
isStereoAvailable()
Check to see whether this surface supports stereo rendering. |
void |
queueShaderRequests(ShaderSourceRenderable[] initList,
int numInit,
ShaderSourceRenderable[] logList,
int numLog)
Queue up a collection of shader objects for processing on the next frame. |
void |
removeGraphicsResizeListener(GraphicsResizeListener l)
Remove a resize listener from this surface. |
void |
setClearColor(float r,
float g,
float b,
float a)
Set the background colour that this surface should be cleared to before the drawing step. |
void |
setColorClearNeeded(boolean state)
Set whether we should always force a local colour clear before beginning any drawing. |
void |
setDrawableObjects(GraphicsInstructions[] commands,
int numValid)
Update the list of items to be rendered to the current list. |
void |
setStereoEyeSeparation(float sep)
Set the eye separation value when rendering stereo, defined as the distance from the center axis to one eye. |
void |
setStereoRenderingPolicy(int policy)
Set the rendering policy used when handling stereo. |
void |
swap()
Swap the buffers now if the surface supports multiple buffer drawing. |
Methods inherited from interface org.j3d.aviatrix3d.pipeline.OutputDevice |
dispose, disposeSingleThreadResources, draw, enableSingleThreaded, getSurfaceObject, isDisposed, queueDeletedObject, setErrorReporter |
Field Detail |
public static final int NO_STEREO
public static final int QUAD_BUFFER_STEREO
public static final int ALTERNATE_FRAME_STEREO
public static final int TWO_CANVAS_STEREO
Method Detail |
public boolean isStereoAvailable()
public boolean isQuadStereoAvailable()
As this is not known until after initialisation, this method will return false until it can determine whether or not stereo is available.
public void setStereoRenderingPolicy(int policy)
policy
- The policy to currently use
java.lang.IllegalArgumentException
- The policy type is not one of the legal
selections.public int getStereoRenderingPolicy()
NO_STEREO
.
public void setStereoEyeSeparation(float sep)
sep
- The amount of eye separationpublic float getStereoEyeSeparation()
public void setClearColor(float r, float g, float b, float a)
r
- The red component of the background clear colourg
- The green component of the background clear colourb
- The blue component of the background clear coloura
- The alpha component of the background clear colourpublic void setColorClearNeeded(boolean state)
state
- true if we should always locally clear firstpublic void queueShaderRequests(ShaderSourceRenderable[] initList, int numInit, ShaderSourceRenderable[] logList, int numLog)
initList
- The shaders needing initialisationnumInit
- The number of shaders needing initialisationlogList
- The shaders needing log fetchingnumLog
- The number of shaders needing log fetchingpublic void setDrawableObjects(GraphicsInstructions[] commands, int numValid)
commands
- The list of drawable surfaces to rendernumValid
- The number of valid items in the arraypublic void swap()
public boolean getSurfaceToVWorld(int x, int y, int layer, int subLayer, javax.vecmath.Matrix4f matrix)
x
- The X coordinate in the entire surfacey
- The Y coordinate in the entire surfacelayer
- The layer ID to fetch from. Layer 0 is the front-mostsubLayer
- The ID of the viewport-layer that is needed. If there
are no sub-layers, use 0.matrix
- The matrix to copy into
public boolean getPixelLocationInSurface(int x, int y, int layer, int subLayer, javax.vecmath.Point3f position)
x
- The X coordinate in the entire surfacey
- The Y coordinate in the entire surfacelayer
- The layer ID to fetch from. Layer 0 is the front-mostsubLayer
- The ID of the viewport-layer that is needed. If there
are no sub-layers, use 0.position
- The converted position. It must be preallocated.
public boolean getCenterEyeInSurface(int x, int y, int layer, int subLayer, javax.vecmath.Point3f position)
x
- The X coordinate in the entire surfacey
- The Y coordinate in the entire surfacelayer
- The layer ID to fetch from. Layer 0 is the front-mostsubLayer
- The ID of the viewport-layer that is needed. If there
are no sub-layers, use 0.position
- The current eye position. It must be preallocated.
public void addGraphicsResizeListener(GraphicsResizeListener l)
l
- The new listener instance to addpublic void removeGraphicsResizeListener(GraphicsResizeListener l)
l
- The listener instance to remove
|
Aviatrix3D 2.0 Beta 2 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |