CullTraverserData

from panda3d.core import CullTraverserData
class CullTraverserData

Bases: DTOOL_SUPER_BASE

This collects together the pieces of data that are accumulated for each node while walking the scene graph during the cull traversal.

Having this as a separate object simplifies the parameter list to CullTraverser::r_traverse(), as well as to other functions like PandaNode::cull_callback(). It also makes it easier to add cull parameters, and provides a place to abstract out some of the cull behavior (like view-frustum culling).

Inheritance diagram

Inheritance diagram of CullTraverserData

__init__(*args, **kwargs)
applyTransform()

C++ Interface: apply_transform(const CullTraverserData self, const TransformState node_transform)

/**
  • Applies the indicated transform changes onto the current data.

*/

applyTransformAndState()

C++ Interface: apply_transform_and_state(const CullTraverserData self, CullTraverser trav)

/**
  • Applies the transform and state from the current node onto the current

  • data. This also evaluates billboards, etc.

*/

apply_transform()

C++ Interface: apply_transform(const CullTraverserData self, const TransformState node_transform)

/**
  • Applies the indicated transform changes onto the current data.

*/

apply_transform_and_state()

C++ Interface: apply_transform_and_state(const CullTraverserData self, CullTraverser trav)

/**
  • Applies the transform and state from the current node onto the current

  • data. This also evaluates billboards, etc.

*/

getInternalTransform()

C++ Interface: get_internal_transform(CullTraverserData self, const CullTraverser trav)

/**
  • Returns the internal transform: the modelview transform in the GSG’s

  • internal coordinate system.

*/

getModelviewTransform()

C++ Interface: get_modelview_transform(CullTraverserData self, const CullTraverser trav)

/**
  • Returns the modelview transform: the relative transform from the camera to

  • the model.

*/

getNetTransform()

C++ Interface: get_net_transform(CullTraverserData self, const CullTraverser trav)

/**
  • Returns the net transform: the relative transform from root of the scene

  • graph to the current node.

*/

get_internal_transform()

C++ Interface: get_internal_transform(CullTraverserData self, const CullTraverser trav)

/**
  • Returns the internal transform: the modelview transform in the GSG’s

  • internal coordinate system.

*/

get_modelview_transform()

C++ Interface: get_modelview_transform(CullTraverserData self, const CullTraverser trav)

/**
  • Returns the modelview transform: the relative transform from the camera to

  • the model.

*/

get_net_transform()

C++ Interface: get_net_transform(CullTraverserData self, const CullTraverser trav)

/**
  • Returns the net transform: the relative transform from root of the scene

  • graph to the current node.

*/

isInView()

C++ Interface: is_in_view(CullTraverserData self, const BitMask camera_mask)

/**
  • Returns intersection flags if the current node may be within the view

  • frustum, 0 otherwise.

*/

isThisNodeHidden()

C++ Interface: is_this_node_hidden(CullTraverserData self, const BitMask camera_mask)

/**
  • Returns true if this particular node is hidden, even though we might be

  • traversing past this node to find a child node that has had show_through()

  • called for it. If this returns true, the node should not be rendered.

*/

is_in_view()

C++ Interface: is_in_view(CullTraverserData self, const BitMask camera_mask)

/**
  • Returns intersection flags if the current node may be within the view

  • frustum, 0 otherwise.

*/

is_this_node_hidden()

C++ Interface: is_this_node_hidden(CullTraverserData self, const BitMask camera_mask)

/**
  • Returns true if this particular node is hidden, even though we might be

  • traversing past this node to find a child node that has had show_through()

  • called for it. If this returns true, the node should not be rendered.

*/

node()

C++ Interface: node(CullTraverserData self)

/**
  • Returns the node traversed to so far.

*/

node_path
view_frustum