CullResult

from panda3d.core import CullResult
class CullResult

Bases: ReferenceCount

This stores the result of a BinCullHandler traversal: an ordered collection of CullBins, each of which holds a number of Geoms and RenderStates to be rendered in some defined order.

This is also used to keep the results of last frame’s cull traversal around to make next frame’s traversal of the same scene a little easier.

Inheritance diagram

Inheritance diagram of CullResult

__init__(*args, **kwargs)
draw()

C++ Interface: draw(const CullResult self, Thread current_thread)

/**
  • Asks all the bins to draw themselves in the correct order.

*/

finishCull()

C++ Interface: finish_cull(const CullResult self, SceneSetup scene_setup, Thread current_thread)

/**
  • Called after all the geoms have been added, this indicates that the cull

  • process is finished for this frame and gives the bins a chance to do any

  • post-processing (like sorting) before moving on to draw.

*/

finish_cull()

C++ Interface: finish_cull(const CullResult self, SceneSetup scene_setup, Thread current_thread)

/**
  • Called after all the geoms have been added, this indicates that the cull

  • process is finished for this frame and gives the bins a chance to do any

  • post-processing (like sorting) before moving on to draw.

*/

getClassType()

C++ Interface: get_class_type()

get_class_type()

C++ Interface: get_class_type()

makeNext()

C++ Interface: make_next(CullResult self)

/**
  • Returns a newly-allocated CullResult object that contains a copy of just

  • the subset of the data from this CullResult object that is worth keeping

  • around for next frame.

*/

makeResultGraph()

C++ Interface: make_result_graph(const CullResult self)

/**
  • Returns a special scene graph constructed to represent the results of the

  • cull. This will be a hierarchy of nodes, one node for each bin, each of

  • which will in term be a parent of a number of GeomNodes, representing the

  • geometry drawn in each bin.

  • This is useful mainly for high-level debugging and abstraction tools; it

  • should not be mistaken for the low-level cull result itself. For the low-

  • level cull result, use draw() to efficiently draw the culled scene.

*/

make_next()

C++ Interface: make_next(CullResult self)

/**
  • Returns a newly-allocated CullResult object that contains a copy of just

  • the subset of the data from this CullResult object that is worth keeping

  • around for next frame.

*/

make_result_graph()

C++ Interface: make_result_graph(const CullResult self)

/**
  • Returns a special scene graph constructed to represent the results of the

  • cull. This will be a hierarchy of nodes, one node for each bin, each of

  • which will in term be a parent of a number of GeomNodes, representing the

  • geometry drawn in each bin.

  • This is useful mainly for high-level debugging and abstraction tools; it

  • should not be mistaken for the low-level cull result itself. For the low-

  • level cull result, use draw() to efficiently draw the culled scene.

*/