NGNode.DirtyFlag, NGNode.RenderRootResult
childDirty, contentBounds, cullingBits, dirty, DIRTY_CHILDREN_ACCUMULATED_THRESHOLD, dirtyChildrenAccumulated, TEMP_TRANSFORM, transformedBounds
Constructor and Description |
---|
NGGroup() |
Modifier and Type | Method and Description |
---|---|
void |
add(int index,
NGNode node)
Adds a node to the given index.
|
void |
addToRemoved(NGNode n) |
void |
clear() |
protected void |
clearDirty()
Clears the dirty flag.
|
void |
clearFrom(int fromIndex) |
protected NGNode.RenderRootResult |
computeRenderRoot(NodePath path,
RectBounds dirtyRegion,
int cullingIndex,
BaseTransform tx,
GeneralTransform3D pvTx)
*
Culling Related Methods *
*
|
void |
drawDirtyOpts(BaseTransform tx,
GeneralTransform3D pvTx,
Rectangle clipBounds,
int[] countBuffer,
int dirtyRegionIndex)
Helper method draws rectangles indicating the overdraw rectangles.
|
List<NGNode> |
getChildren()
Gets an unmodifiable list of the current children on this group
|
List<NGNode> |
getRemovedChildren() |
protected boolean |
hasOverlappingContents() |
protected boolean |
hasVisuals()
Marks if the node has some visuals and that the bounds change
should be taken into account when using the dirty region.
|
boolean |
isEmpty() |
protected void |
markCullRegions(DirtyRegionContainer drc,
int cullingRegionsBitsOfParent,
BaseTransform tx,
GeneralTransform3D pvTx)
Marks placement of the node in dirty region encoded into 2 bit flag:
00 - node outside dirty region
01 - node intersecting dirty region
11 - node completely within dirty region
32 bits = 15 regions max.
|
protected boolean |
needsBlending()
Return true if this node has a blend mode that requires special
processing.
|
void |
remove(int index) |
void |
remove(NGNode node) |
protected void |
renderContent(Graphics g) |
void |
renderForcedContent(Graphics gOptional)
Called on every render pulse for all nodes in case they have render-time
operations that must be completed on a pulse, but were not otherwise
rendered by the ordinary damage management logic.
|
void |
setBlendMode(Object blendMode)
Set by the FX scene graph.
|
accumulateDirtyRegions, applyClip, applyEffect, applyTransform, clearDirtyTree, clearPainted, computeOpaqueRegion, computePadding, doPreCulling, doRender, effectChanged, geometryChanged, getCacheFilter, getClipNode, getClippedBounds, getCompleteBounds, getContentBounds, getEffect, getEffectBounds, getEffectFilter, getName, getNodeBlendMode, getOpacity, getOpaqueRegion, getParent, getRenderRoot, getTransform, hasOpaqueRegion, invalidateCache, invalidateCacheByTranslation, invalidateOpaqueRegion, isClean, isContentBounds2D, isDepthTest, isRectClip, isVisible, markDirty, markTreeDirty, markTreeDirtyNoIncrement, printDirtyOpts, release, render, renderEffect, setCachedAsBitmap, setClipNode, setContentBounds, setDepthTest, setEffect, setName, setNodeBlendMode, setOpacity, setParent, setTransformedBounds, setTransformMatrix, setVisible, supportsOpaqueRegions, toString, visualsChanged
public List<NGNode> getChildren()
public void add(int index, NGNode node)
index
- -1, or <= node.size()node
- public void clearFrom(int fromIndex)
public void addToRemoved(NGNode n)
protected void clearDirty()
NGNode
clearDirty
in class NGNode
public void remove(NGNode node)
public void remove(int index)
public void clear()
public void setBlendMode(Object blendMode)
blendMode
- cannot be nullpublic void renderForcedContent(Graphics gOptional)
NGNode
renderForcedContent
in class NGNode
gOptional
- the Graphics object that was used to render the
Scene, or nullprotected void renderContent(Graphics g)
renderContent
in class NGNode
protected boolean hasOverlappingContents()
hasOverlappingContents
in class NGNode
public boolean isEmpty()
protected boolean hasVisuals()
NGNode
hasVisuals
in class NGNode
protected boolean needsBlending()
NGNode
needsBlending
in class NGNode
protected NGNode.RenderRootResult computeRenderRoot(NodePath path, RectBounds dirtyRegion, int cullingIndex, BaseTransform tx, GeneralTransform3D pvTx)
path
- the NodePath to populate with the path to the render root. Cannot be null.dirtyRegion
- the current dirty region. Cannot be null.cullingIndex
- index of culling informationtx
- current transform. Cannot be null.pvTx
- current perspective transform. Cannot be null.protected void markCullRegions(DirtyRegionContainer drc, int cullingRegionsBitsOfParent, BaseTransform tx, GeneralTransform3D pvTx)
NGNode
drc
- The array of dirty regions.cullingRegionsBitsOfParent
- culling bits of parent. -1 if there's no parent.tx
- The transform for this render operation. Cannot be null.pvTx
- Perspective camera transform. Cannot be null.public void drawDirtyOpts(BaseTransform tx, GeneralTransform3D pvTx, Rectangle clipBounds, int[] countBuffer, int dirtyRegionIndex)
NGNode
drawDirtyOpts
in class NGNode
tx
- The scene->parent transform.pvTx
- The perspective camera transform.clipBounds
- The bounds in scene coordinatescountBuffer
- A pixel array where each pixel contains a color indicating how many times
it has been "drawn"dirtyRegionIndex
- the index of the dirty region we're gathering information for. This is
needed so we can shift the "painted" field to find out if this node
was drawn in this dirty region.Copyright © 2020. All rights reserved.