|
Aviatrix3D 2.0 Dev |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.j3d.aviatrix3d.pipeline.graphics.BaseCullStage
org.j3d.aviatrix3d.pipeline.graphics.FrustumCullStage
Handles the complete set of scenegraph maintenance and culling operations.
The culling phase generates a list of nodes to render trimmed according to
what is visible in the view frustum, and return values from
Cullable
and CustomRenderable
.
By default, the implementation will walk into shape3Ds looking for any offscreen textures to be rendered. If you know that you do not have any in the scene, then you can set an internal flag to not look for them, thus achieving a simple performance boost.
Field Summary |
Fields inherited from class org.j3d.aviatrix3d.pipeline.graphics.BaseCullStage |
activeParent, checkOffscreens, clipList, clipTxList, currentViewpointPath, eyePoint, fogStack, lastClip, lastFogStack, lastLight, lastOutputLayer, lastOutputList, lastSubscene, lastTxStack, layerCounts, layersTmp, LIGHT_INCREMENT, LIGHT_START_SIZE, lightList, lightTxList, LIST_INCREMENT, LIST_START_LENGTH, matrixUtils, orientationMatrix, outputLayers, outputSceneParents, pendingParents, pendingSubscenes, processedPBufferTextures, receiver, screenOrientation, SHARED_BG_MSG, SHARED_VP_MSG, terminate, textureUnits, transformStack, useEyePoint, useOrientation, validSceneParents, viewMatrix1, viewMatrix2, visitedNodes, workCullList |
Constructor Summary | |
FrustumCullStage()
Create a basic instance of this class with the list assuming there are no off-screen buffers in use for the initial internal setup. |
|
FrustumCullStage(int numSurfaces)
Create a basic instance of this class with the list initial internal setup for the given number of renderable surfaces. |
Method Summary | |
protected void |
cleanupOldRefs()
Clean up the unused resources after the end of the cull process. |
protected void |
cullRenderPass(RenderPass pass,
int passNumber,
int subsceneId,
int layerId,
int viewIndex,
int layerIndex,
int buffer)
Update and cull the a single pass from a multipass rendering. |
protected void |
cullScene(SimpleScene scene,
int subsceneId,
int layerId,
int viewIndex,
int layerIndex,
int buffer)
Update and cull the scenegraph. |
protected int |
cullSingle(Group node,
int buffer)
Update and cull the scenegraph of a single node without doing any other processing. |
protected void |
fillEnvData(SimpleScene scene,
GraphicsEnvironmentData envData,
int buffer)
Take the scene and fill in a GraphicsEnvironmentData instance. |
Methods inherited from class org.j3d.aviatrix3d.pipeline.graphics.BaseCullStage |
checkForOffscreens, cull, cull2DLayer, cullCompositeLayer, cullCompositeViewport, cullMultipassViewport, cullMultipassViewportLayer, cullSimpleLayer, cullSimpleViewport, cullViewport, fillEnvData, fillEnvData, halt, isOffscreenCheckEnabled, processSubsceneLayers, resizeClipList, resizeCullList, resizeFogStack, resizeLightList, resizeOffscreenList, resizeOutputLists, resizeStack, setCulledGeometryReceiver, setEyePointOffset, setOffscreenCheckEnabled, setScreenOrientation |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public FrustumCullStage()
public FrustumCullStage(int numSurfaces)
numSurfaces
- Total number of surfaces to prepare rendering forMethod Detail |
protected void cullScene(SimpleScene scene, int subsceneId, int layerId, int viewIndex, int layerIndex, int buffer)
cullScene
in class BaseCullStage
scene
- The scene instance to cullsubsceneId
- The index of the subscene in the viewport outputlayerId
- The index of the layer in the outputviewIndex
- The index of the viewport in the parent
ViewportCollectionlayerIndex
- The index of the layer within the viewportbuffer
- The buffer ID to use to output the data to when
multi-threadedprotected void cullRenderPass(RenderPass pass, int passNumber, int subsceneId, int layerId, int viewIndex, int layerIndex, int buffer)
cullRenderPass
in class BaseCullStage
pass
- The rendering pass instance to cullsubsceneId
- The index of the subscene in the viewport outputlayerId
- The index of the layer in the outputviewIndex
- The index of the viewport in the parent
ViewportCollectionlayerIndex
- The index of the layer within the viewportbuffer
- The buffer ID to use to output the data to when
multi-threadedprotected int cullSingle(Group node, int buffer)
cullSingle
in class BaseCullStage
node
- The root node to start the cull frombuffer
- The buffer ID to use to output the data to when
multi-threaded
protected void fillEnvData(SimpleScene scene, GraphicsEnvironmentData envData, int buffer)
fillEnvData
in class BaseCullStage
scene
- The scene to take data fromenvData
- Data instance to copy it tobuffer
- The buffer ID to use to output the data to when
multi-threadedprotected void cleanupOldRefs()
cleanupOldRefs
in class BaseCullStage
|
Aviatrix3D 2.0 Dev |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |