Panda3D

drawCullHandler.h
Go to the documentation of this file.
1 /**
2 * PANDA 3D SOFTWARE
3 * Copyright (c) Carnegie Mellon University. All rights reserved.
4 *
5 * All use of this software is subject to the terms of the revised BSD
6 * license. You should have received a copy of this license along
7 * with this source code in a file named "LICENSE."
8 *
9 * @file drawCullHandler.h
10 * @author drose
11 * @date 2002-02-25
12 */
13
14 #ifndef DRAWCULLHANDLER_H
15 #define DRAWCULLHANDLER_H
16
17 #include "pandabase.h"
18 #include "cullHandler.h"
19
20 class GraphicsStateGuardianBase;
21
22 /**
23 * This special kind of CullHandler immediately draws its contents as soon as
24 * it receives them. This draws geometry immediately as it is encountered in
25 * the scene graph by cull, mixing the draw and cull traversals into one
26 * traversal, and prohibiting state sorting. However, it has somewhat lower
27 * overhead than separating out draw and cull, if state sorting and
28 * multiprocessing are not required.
29 */
30 class EXPCL_PANDA_CULL DrawCullHandler : public CullHandler {
31 public:
32 INLINE DrawCullHandler(GraphicsStateGuardianBase *gsg);
33
34 virtual void record_object(CullableObject *object,
35 const CullTraverser *traverser);
36
37 private:
38 GraphicsStateGuardianBase *_gsg;
39 };
40
41 #include "drawCullHandler.I"
42
43 #endif
CullHandler
This defines the abstract interface for an object that receives Geoms identified by the CullTraverser...
Definition: cullHandler.h:28
CullHandler::record_object
virtual void record_object(CullableObject *object, const CullTraverser *traverser)
This callback function is intended to be overridden by a derived class.
Definition: cullHandler.cxx:43
CullTraverser
This object performs a depth-first traversal of the scene graph, with optional view-frustum culling,...
Definition: cullTraverser.h:45
CullableObject
The smallest atom of cull.
Definition: cullableObject.h:41
DrawCullHandler
This special kind of CullHandler immediately draws its contents as soon as it receives them.
Definition: drawCullHandler.h:30
GraphicsStateGuardianBase
This is a base class for the GraphicsStateGuardian class, which is itself a base class for the variou...
Definition: graphicsStateGuardianBase.h:110
cullHandler.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
drawCullHandler.I
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
pandabase.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.