14 #ifndef PORTALCLIPPER_H
15 #define PORTALCLIPPER_H
54 INLINE
bool is_partial_portal_in_view();
55 INLINE
bool is_facing_view(
const LPlane &portal_plane);
56 INLINE
bool is_whole_portal_in_view(
const LMatrix4 &cmat);
58 bool prepare_portal(
const NodePath &node_path);
61 INLINE
void draw_camera_frustum();
64 INLINE
void move_to(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z);
65 void move_to(
const LVecBase3 &v);
67 INLINE
void draw_to(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z);
68 void draw_to(
const LVecBase3 &v);
70 void draw_current_portal();
74 INLINE
void get_reduced_viewport(LPoint2& min, LPoint2& max)
const;
75 INLINE
void set_reduced_viewport(
const LPoint2& min,
const LPoint2& max);
77 INLINE
void set_clip_state(
const RenderState* clip_state);
86 TypedObject::get_class_type());
89 return get_class_type();
100 INLINE Point(
const LVecBase3 &point,
const LColor &color);
101 INLINE Point(
const Point ©);
102 INLINE
void operator = (
const Point ©);
105 UnalignedLVecBase4 _color;
118 LPoint2 _reduced_viewport_min;
119 LPoint2 _reduced_viewport_max;
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This defines a bounding convex hexahedron.
This defines the abstract interface for an object that receives Geoms identified by the CullTraverser...
This collects together the pieces of data that are accumulated for each node while walking the scene ...
The smallest atom of cull.
A node that holds Geom objects, renderable pieces of geometry.
This defines the actual numeric vertex data stored in a Geom, in the structure defined by a particula...
This is another abstract class, for a general class of bounding volumes that actually enclose points ...
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...
A basic node of the scene graph or data graph.
This object performs a depth-first traversal of the scene graph, with optional view-frustum culling,...
A node in the scene graph that can hold a Portal Polygon, which is a rectangle.
This represents a unique collection of RenderAttrib objects that correspond to a particular renderabl...
This object holds the camera position, etc., and other general setup information for rendering a part...
TypeHandle is the identifier used to differentiate C++ class types.
This is an abstract class that all classes which use TypeHandle, and also provide virtual functions t...
static void init_type()
This function is declared non-inline to work around a compiler bug in g++ 2.96.
This is our own Panda specialization on the default STL vector.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.