Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

CRGraphicsStateGuardian Class Reference

A GraphicsStateGuardian specialized for rendering into OpenGL contexts. More...

#include <crGraphicsStateGuardian.h>

Inheritance diagram for CRGraphicsStateGuardian:

GraphicsStateGuardian GraphicsStateGuardianBase TypedReferenceCount TypedObject ReferenceCount List of all members.

Public Member Functions

 CRGraphicsStateGuardian (GraphicsWindow *win)
 ~CRGraphicsStateGuardian ()
virtual void reset ()
 Resets all internal state as if the gsg were newly created.

virtual void clear (const RenderBuffer &buffer)
 Clears all of the indicated buffers to their assigned colors.

virtual void clear (const RenderBuffer &buffer, const DisplayRegion *region)
 Clears all of the indicated buffers to their assigned colors.

virtual void prepare_display_region ()
 Prepare a display region for rendering (set up scissor region and viewport).

virtual bool prepare_lens ()
 Makes the current lens (whichever lens was most recently specified with push_lens()) active, so that it will transform future rendered geometry.

virtual void draw_point (GeomPoint *geom, GeomContext *gc)
virtual void draw_line (GeomLine *geom, GeomContext *gc)
virtual void draw_linestrip (GeomLinestrip *geom, GeomContext *gc)
virtual void draw_sprite (GeomSprite *geom, GeomContext *gc)
virtual void draw_polygon (GeomPolygon *geom, GeomContext *gc)
virtual void draw_quad (GeomQuad *geom, GeomContext *gc)
virtual void draw_tri (GeomTri *geom, GeomContext *gc)
virtual void draw_tristrip (GeomTristrip *geom, GeomContext *gc)
virtual void draw_trifan (GeomTrifan *geom, GeomContext *gc)
virtual void draw_sphere (GeomSphere *geom, GeomContext *gc)
virtual TextureContextprepare_texture (Texture *tex)
 Creates a new retained-mode representation of the given texture, and returns a newly-allocated TextureContext pointer to reference it.

virtual void apply_texture (TextureContext *tc)
 Makes the texture the currently available texture for rendering.

virtual void release_texture (TextureContext *tc)
 Frees the GL resources previously allocated for the texture.

virtual GeomNodeContextprepare_geom_node (GeomNode *node)
 Prepares the indicated GeomNode for retained-mode rendering.

virtual void draw_geom_node (GeomNode *node, const RenderState *state, GeomNodeContext *gnc)
 Draws a GeomNode previously indicated by a call to prepare_geom_node().

virtual void release_geom_node (GeomNodeContext *gnc)
 Frees the resources previously allocated via a call to prepare_geom_node(), including deleting the GeomNodeContext itself, if necessary.

virtual void copy_texture (TextureContext *tc, const DisplayRegion *dr)
 Copy the pixel region indicated by the display region from the framebuffer into texture memory.

virtual void copy_texture (TextureContext *tc, const DisplayRegion *dr, const RenderBuffer &rb)
virtual void texture_to_pixel_buffer (TextureContext *tc, PixelBuffer *pb)
virtual void texture_to_pixel_buffer (TextureContext *tc, PixelBuffer *pb, const DisplayRegion *dr)
virtual void copy_pixel_buffer (PixelBuffer *pb, const DisplayRegion *dr)
virtual void copy_pixel_buffer (PixelBuffer *pb, const DisplayRegion *dr, const RenderBuffer &rb)
virtual void draw_pixel_buffer (PixelBuffer *pb, const DisplayRegion *dr, const NodeTransitions &na=NodeTransitions())
virtual void draw_pixel_buffer (PixelBuffer *pb, const DisplayRegion *dr, const RenderBuffer &rb, const NodeTransitions &na=NodeTransitions())
virtual void apply_material (const Material *material)
void apply_fog (Fog *fog)
virtual void issue_transform (const TransformState *transform)
 Sends the indicated transform matrix to the graphics API to be applied to future vertices.

virtual void issue_tex_matrix (const TexMatrixAttrib *attrib)
virtual void issue_texture (const TextureAttrib *attrib)
virtual void issue_material (const MaterialAttrib *attrib)
virtual void issue_render_mode (const RenderModeAttrib *attrib)
virtual void issue_texture_apply (const TextureApplyAttrib *attrib)
virtual void issue_color_write (const ColorWriteAttrib *attrib)
virtual void issue_depth_test (const DepthTestAttrib *attrib)
virtual void issue_depth_write (const DepthWriteAttrib *attrib)
virtual void issue_cull_face (const CullFaceAttrib *attrib)
virtual void issue_fog (const FogAttrib *attrib)
virtual void issue_depth_offset (const DepthOffsetAttrib *attrib)
virtual void bind_light (PointLight *light, int light_id)
 Called the first time a particular light has been bound to a given id within a frame, this should set up the associated hardware light with the light's properties.

virtual void bind_light (DirectionalLight *light, int light_id)
 Called the first time a particular light has been bound to a given id within a frame, this should set up the associated hardware light with the light's properties.

virtual void bind_light (Spotlight *light, int light_id)
 Called the first time a particular light has been bound to a given id within a frame, this should set up the associated hardware light with the light's properties.

virtual bool wants_normals (void) const
virtual bool wants_texcoords (void) const
virtual bool depth_offset_decals ()
 Returns true if this GSG can implement decals using a DepthOffsetAttrib, or false if that is unreliable and the three-step rendering process should be used instead.

virtual CoordinateSystem get_internal_coordinate_system () const
 Should be overridden by derived classes to return the coordinate system used internally by the GSG, if any one particular coordinate system is used.

virtual float compute_distance_to (const LPoint3f &point) const
 This function may only be called during a render traversal; it will compute the distance to the indicated point, assumed to be in modelview coordinates, from the camera plane.

void print_gfx_visual ()
 Prints a description of the current visual selected.

void dump_state (void)
const LMatrix4f & get_current_color_mat () const
const float & get_current_alpha_offset () const
const float & get_current_alpha_scale () const
void issue_transformed_color (const Colorf &color) const
 Transform the color by the current color matrix, and calls the appropriate chromium.Color function.

virtual TypeHandle get_type (void) const
virtual TypeHandle force_init_type ()
void release_all_textures ()
 Frees the resources for all textures associated with this GSG.

void release_all_geoms ()
 Frees the resources for all Geoms and GeomNodes associated with this GSG.

const FrameBufferPropertiesget_properties () const
 Returns the frame buffer properties requested for this GSG.

GraphicsPipeget_pipe () const
 Returns the graphics pipe on which this GSG was created.

const GraphicsThreadingModelget_threading_model () const
 Returns the threading model that was used to create this GSG.

void set_scene (SceneSetup *scene_setup)
 Sets the SceneSetup object that indicates the initial camera position, etc.

SceneSetupget_scene () const
 Returns the SceneSetup object.

virtual GeomContextprepare_geom (Geom *geom)
 Prepares the indicated Geom for retained-mode rendering.

virtual void release_geom (GeomContext *gc)
 Frees the resources previously allocated via a call to prepare_geom(), including deleting the GeomContext itself, if necessary.

virtual void set_state_and_transform (const RenderState *state, const TransformState *transform)
 Simultaneously resets the render state and the transform state.

virtual void set_color_clear_value (const Colorf &value)
 Sets the color that the next do_clear() command will set the color buffer to.

virtual void set_depth_clear_value (const float value)
 Sets the depth that the next do_clear() command will set the depth buffer to.

virtual void do_clear (const RenderBuffer &buffer)=0
void clear (ClearableRegion *clearable)
 Clears the framebuffer within the current DisplayRegion, according to the flags indicated by the given ClearableRegion object.

void clear (DisplayRegion *dr)
 Clears the framebuffer within the indicated DisplayRegion, according to the flags indicated by the DisplayRegion object (inheriting from ClearableRegion).

void enable_normals (bool val)
virtual bool begin_frame ()
 Called before each frame is rendered, to allow the GSG a chance to do any internal cleanup before beginning the frame.

virtual bool begin_scene ()
 Called between begin_frame() and end_frame() to mark the beginning of drawing commands for a "scene" (usually a particular DisplayRegion) within a frame.

virtual void end_scene ()
 Called between begin_frame() and end_frame() to mark the end of drawing commands for a "scene" (usually a particular DisplayRegion) within a frame.

virtual void end_frame ()
 Called after each frame is rendered, to allow the GSG a chance to do any internal cleanup after rendering the frame, and before the window flips.

virtual bool wants_colors () const
 Returns true if the GSG should issue geometry color commands, false otherwise.

virtual ConstPointerTo< RenderStatebegin_decal_base_first ()
 Called during draw to begin a three-step rendering phase to draw decals.

virtual ConstPointerTo< RenderStatebegin_decal_nested ()
 Called during draw to begin a three-step rendering phase to draw decals.

virtual ConstPointerTo< RenderStatebegin_decal_base_second ()
 Called during draw to begin a three-step rendering phase to draw decals.

virtual void finish_decal ()
 Called during draw to clean up after decals are finished.

void reset_if_new ()
 Calls reset() to initialize the GSG, but only if it hasn't been called yet.

void modify_state (const RenderState *state)
 Applies the attributes indicated in the state set to the current state, and issues the changes to the graphics hardware.

void set_state (const RenderState *state)
 Applies the attributes indicated in the state set to the current state, and issues the changes to the graphics hardware.

void set_transform (const TransformState *transform)
 Sets the world transform that will be applied to subsequent geometry.

RenderBuffer get_render_buffer (int buffer_type)
 Returns a RenderBuffer object suitable for operating on the requested set of buffers.

const DisplayRegionget_current_display_region (void) const
 Returns the current display region being rendered to, as set by the last call to push_display_region() (or restored by pop_display_region()).

const Lensget_current_lens () const
 Returns the current lens being rendered with, as set by the last call to push_lens() (or restored by pop_lens()).

DisplayRegionStack push_display_region (const DisplayRegion *dr)
 Saves the current display region information and sets up a new display region for rendering.

void pop_display_region (DisplayRegionStack &node)
 Restores the display region previously in effect, before the matching call to push_display_region().

FrameBufferStack push_frame_buffer (const RenderBuffer &buffer, const DisplayRegion *dr)
 Saves the contents of the frame buffer (within the indicated display region only) so that rendering may be performed (for instance, to render a partial in a multipass algorithm) and the frame buffer later restored via a matching call to pop_frame_buffer().

void pop_frame_buffer (FrameBufferStack &node)
 Restores the contents of the frame buffer as saved by a previous call to push_frame_buffer().

LensStack push_lens (const Lens *lens)
 Saves the current lens information and sets up a new lens for rendering.

void pop_lens (LensStack &stack)
 Restores the lens previously in effect, before the matching call to push_lens().

bool set_lens (const Lens *lens)
 Sets a new lens for rendering without bothering to push or pop.

void set_coordinate_system (CoordinateSystem cs)
 Changes the coordinate system in effect on this particular gsg.

CoordinateSystem get_coordinate_system () const
 Returns the coordinate system in effect on this particular gsg.

virtual void issue_color_scale (const ColorScaleAttrib *attrib)
virtual void issue_color (const ColorAttrib *attrib)
 This method is defined in the base class because it is likely that this functionality will be used for all (or at least most) kinds of GraphicsStateGuardians--it's not specific to any one rendering backend.

virtual void issue_light (const LightAttrib *attrib)
 The default implementation of issue_light() assumes we have a limited number of hardware lights available.

virtual void issue_transparency (const TransparencyAttrib *attrib)
virtual void issue_color_blend (const ColorBlendAttrib *attrib)
virtual void issue_clip_plane (const ClipPlaneAttrib *attrib)
 This is fundametically similar to issue_light(), with calls to slot_new_clip_plane(), apply_clip_plane(), and enable_clip_planes(), as appropriate.

void traverse_prepared_textures (bool(*pertex_callbackfn)(TextureContext *, void *), void *callback_arg)
virtual void issue_alpha_test (const AlphaTestAttrib *)
virtual void issue_tex_gen (const TexGenAttrib *)
virtual void issue_stencil (const StencilAttrib *)
int get_type_index () const
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type.

bool is_of_type (TypeHandle handle) const
 Returns true if the current object is or derives from the indicated type.

bool is_exact_type (TypeHandle handle) const
 Returns true if the current object is the indicated type exactly.

int get_ref_count () const
 Returns the current reference count.

int ref () const
 Explicitly increments the reference count.

int unref () const
 Explicitly decrements the reference count.

void test_ref_count_integrity () const
 Does some easy checks to make sure that the reference count isn't completely bogus.


Static Public Member Functions

GraphicsStateGuardianmake_GlGraphicsStateGuardian (const FactoryParams &params)
TypeHandle get_class_type (void)
void init_type (void)

Static Public Attributes

PStatCollector _vertices_display_list_pcollector
PStatCollector _total_texusage_pcollector
PStatCollector _active_texusage_pcollector
PStatCollector _total_geom_pcollector
PStatCollector _active_geom_pcollector
PStatCollector _total_geom_node_pcollector
PStatCollector _active_geom_node_pcollector
PStatCollector _total_texmem_pcollector
PStatCollector _used_texmem_pcollector
PStatCollector _texmgrmem_total_pcollector
PStatCollector _texmgrmem_resident_pcollector
PStatCollector _vertices_pcollector
PStatCollector _vertices_tristrip_pcollector
PStatCollector _vertices_trifan_pcollector
PStatCollector _vertices_tri_pcollector
PStatCollector _vertices_other_pcollector
PStatCollector _state_changes_pcollector
PStatCollector _transform_state_pcollector
PStatCollector _texture_state_pcollector
PStatCollector _nodes_pcollector
PStatCollector _geom_nodes_pcollector
PStatCollector _frustum_cull_volumes_pcollector
PStatCollector _frustum_cull_transforms_pcollector
PStatCollector _set_state_pcollector
PStatCollector _draw_primitive_pcollector
PStatCollector _transform_states_pcollector
PStatCollector _transform_states_unused_pcollector
PStatCollector _render_states_pcollector
PStatCollector _render_states_unused_pcollector

Protected Types

enum  ColorTransform { CT_offset = 0x01, CT_scale = 0x02 }

Protected Member Functions

virtual void enable_lighting (bool enable)
 Intended to be overridden by a derived class to enable or disable the use of lighting overall.

virtual void set_ambient_light (const Colorf &color)
 Intended to be overridden by a derived class to indicate the color of the ambient light that should be in effect.

virtual void enable_light (int light_id, bool enable)
 Intended to be overridden by a derived class to enable the indicated light id.

virtual void begin_bind_lights ()
 Called immediately before bind_light() is called, this is intended to provide the derived class a hook in which to set up some state (like transform) that might apply to several lights.

virtual void end_bind_lights ()
 Called after before bind_light() has been called one or more times (but before any geometry is issued or additional state is changed), this is intended to clean up any temporary changes to the state that may have been made by begin_bind_lights().

virtual void set_blend_mode (ColorWriteAttrib::Mode color_write_mode, ColorBlendAttrib::Mode color_blend_mode, TransparencyAttrib::Mode transparency_mode)
 Called after any of these three blending states have changed; this function is responsible for setting the appropriate color blending mode based on the given properties.

void free_pointers ()
 Frees some memory that was explicitly allocated within the crgsg.

virtual PointerTo< SavedFrameBuffersave_frame_buffer (const RenderBuffer &buffer, ConstPointerTo< DisplayRegion > dr)
 Saves the indicated planes of the frame buffer (within the indicated display region) and returns it in some meaningful form that can be restored later via restore_frame_buffer().

virtual void restore_frame_buffer (SavedFrameBuffer *frame_buffer)
 Restores the frame buffer that was previously saved.

void activate ()
 Sets this context to be the active context for future GL commands.

void call_glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
void call_glClearDepth (GLclampd depth)
void call_glClearStencil (GLint s)
void call_glClearAccum (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
void call_glDrawBuffer (GLenum mode)
void call_glReadBuffer (GLenum mode)
void call_glShadeModel (GLenum mode)
 Set the shading model to be either GL_FLAT or GL_SMOOTH.

void call_glBlendFunc (GLenum sfunc, GLenum dfunc)
void call_glCullFace (GLenum mode)
void call_glScissor (GLint x, GLint y, GLsizei width, GLsizei height)
void call_glViewport (GLint x, GLint y, GLsizei width, GLsizei height)
void call_glLightModelLocal (GLboolean local)
void call_glLightModelTwoSide (GLboolean twoside)
void call_glStencilFunc (GLenum func, GLint refval, GLuint mask)
void call_glStencilOp (GLenum fail, GLenum zfail, GLenum pass)
void call_glClipPlane (GLenum plane, const double equation[4])
void call_glLineWidth (GLfloat width)
void call_glPointSize (GLfloat size)
void call_glFogMode (GLint mode)
void call_glFogStart (GLfloat start)
void call_glFogEnd (GLfloat end)
void call_glFogDensity (GLfloat density)
void call_glFogColor (const Colorf &color)
void call_glAlphaFunc (GLenum func, GLclampf ref)
void call_glPolygonMode (GLenum mode)
void set_pack_alignment (GLint alignment)
void set_unpack_alignment (GLint alignment)
void enable_multisample (bool val)
void enable_line_smooth (bool val)
void enable_point_smooth (bool val)
void enable_texturing (bool val)
void enable_scissor (bool val)
void enable_dither (bool val)
void enable_stencil_test (bool val)
void enable_clip_plane (int clip_plane, bool val)
 Intended to be overridden by a derived class to enable the indicated plane id.

void enable_multisample_alpha_one (bool val)
void enable_multisample_alpha_mask (bool val)
void enable_blend (bool val)
void enable_depth_test (bool val)
void enable_fog (bool val)
void enable_alpha_test (bool val)
void enable_polygon_offset (bool val)
GLenum get_light_id (int index) const
 Convert index to gl light id.

GLenum get_clip_plane_id (int index) const
 Convert index to gl clip plane id.

void issue_scene_graph_color ()
 Checks whether the scene graph color needs to be issued, and sends the appropriate chromium.Color command if it does.

void set_draw_buffer (const RenderBuffer &rb)
 Sets up the chromium.DrawBuffer to render into the buffer indicated by the RenderBuffer object.

void set_read_buffer (const RenderBuffer &rb)
 Sets up the chromium.ReadBuffer to render into the buffer indicated by the RenderBuffer object.

void bind_texture (TextureContext *tc)
void specify_texture (Texture *tex)
bool apply_texture_immediate (Texture *tex)
 Sends the texture image to GL.

GLenum get_texture_wrap_mode (Texture::WrapMode wm)
 Maps from the Texture's internal wrap mode symbols to GL's.

GLenum get_texture_filter_type (Texture::FilterType ft)
 Maps from the Texture's internal filter type symbols to GL's.

GLenum get_image_type (PixelBuffer::Type type)
 Maps from the PixelBuffer's internal Type symbols to GL's.

GLenum get_external_image_format (PixelBuffer::Format format)
 Maps from the PixelBuffer's Format symbols to GL's.

GLenum get_internal_image_format (PixelBuffer::Format format)
 Maps from the PixelBuffer's Format symbols to a suitable internal format for GL textures.

GLint get_texture_apply_mode_type (TextureApplyProperty::Mode am) const
GLint get_texture_apply_mode_type (TextureApplyAttrib::Mode am) const
 Maps from the texture environment's mode types to the corresponding OpenGL ids.

GLenum get_depth_func_type (DepthTestProperty::Mode m) const
GLenum get_depth_func_type (DepthTestAttrib::Mode m) const
 Maps from the depth func modes to gl version.

GLenum get_stencil_func_type (StencilProperty::Mode m) const
GLenum get_stencil_action_type (StencilProperty::Action a) const
GLenum get_fog_mode_type (Fog::Mode m) const
void build_phony_mipmaps (Texture *tex)
 Generates a series of colored mipmap levels to aid in visualizing the mipmap levels as the hardware applies them.

void build_phony_mipmap_level (int level, int xsize, int ysize)
 Generates a single colored mipmap level.

void save_mipmap_images (Texture *tex)
 Saves out each mipmap level of the indicated texture (which must also be the currently active texture in the GL state) as a separate image file to disk.

Lightget_light (int light_id) const
 Returns the Light object that is bound to the indicated id, or NULL if no Light is bound.

virtual bool slot_new_light (int light_id)
 This will be called by the base class before a particular light id will be used for the first time.

PlaneNodeget_clip_plane (int plane_id) const
 Returns the PlaneNode object that is bound to the indicated id, or NULL if no PlaneNode is bound.

virtual bool slot_new_clip_plane (int plane_id)
 This will be called by the base class before a particular clip plane id will be used for the first time.

virtual void enable_clip_planes (bool enable)
 Intended to be overridden by a derived class to enable or disable the use of clipping planes overall.

virtual void begin_bind_clip_planes ()
 Called immediately before bind_clip_plane() is called, this is intended to provide the derived class a hook in which to set up some state (like transform) that might apply to several planes.

virtual void bind_clip_plane (PlaneNode *plane, int pane_id)
 Called the first time a particular clipping plane has been bound to a given id within a frame, this should set up the associated hardware (or API) clipping plane with the plane's properties.

virtual void end_bind_clip_planes ()
 Called after before bind_clip_plane() has been called one or more times (but before any geometry is issued or additional state is changed), this is intended to clean up any temporary changes to the state that may have been made by begin_bind_clip_planes().

bool mark_prepared_texture (TextureContext *tc)
 This is intended to be called from within prepare_texture().

bool unmark_prepared_texture (TextureContext *tc)
 This is intended to be called from within release_texture().

bool mark_prepared_geom (GeomContext *gc)
 This is intended to be called from within prepare_geom().

bool unmark_prepared_geom (GeomContext *gc)
 This is intended to be called from within release_geom().

bool mark_prepared_geom_node (GeomNodeContext *gnc)
 This is intended to be called from within prepare_geom_node().

bool unmark_prepared_geom_node (GeomNodeContext *gnc)
 This is intended to be called from within release_geom_node().

virtual void close_gsg ()
 This is called by the associated GraphicsWindow when close_window() is called.

void init_frame_pstats ()
void add_to_texture_record (TextureContext *)
void add_to_geom_record (GeomContext *)
void add_to_geom_node_record (GeomNodeContext *)
void record_state_change (TypeHandle)

Static Protected Member Functions

ConstPointerTo< RenderStateget_unlit_state ()
ConstPointerTo< RenderStateget_unclipped_state ()
ConstPointerTo< RenderStateget_untextured_state ()

Protected Attributes

GLclampf _clear_color_red
GLclampf _clear_color_green
GLclampf _clear_color_blue
GLclampf _clear_color_alpha
GLclampd _clear_depth
GLint _clear_stencil
GLclampf _clear_accum_red
GLclampf _clear_accum_green
GLclampf _clear_accum_blue
GLclampf _clear_accum_alpha
GLenum _draw_buffer_mode
GLenum _read_buffer_mode
GLenum _shade_model_mode
GLint _scissor_x
GLint _scissor_y
GLsizei _scissor_width
GLsizei _scissor_height
GLint _viewport_x
GLint _viewport_y
GLsizei _viewport_width
GLsizei _viewport_height
GLboolean _lmodel_local
GLboolean _lmodel_twoside
Colorf _material_ambient
Colorf _material_diffuse
Colorf _material_specular
float _material_shininess
Colorf _material_emission
GLenum _stencil_func
GLenum _stencil_op
GLfloat _line_width
GLfloat _point_size
GLenum _blend_source_func
GLenum _blend_dest_func
GLboolean _depth_mask
GLint _fog_mode
GLfloat _fog_start
GLfloat _fog_end
GLfloat _fog_density
Colorf _fog_color
GLenum _alpha_func
GLclampf _alpha_func_ref
GLenum _polygon_mode
GLint _pack_alignment
GLint _unpack_alignment
bool _multisample_enabled
bool _line_smooth_enabled
bool _point_smooth_enabled
bool _scissor_enabled
bool _texturing_enabled
bool _dither_enabled
bool _stencil_test_enabled
bool _multisample_alpha_one_enabled
bool _multisample_alpha_mask_enabled
bool _blend_enabled
bool _depth_test_enabled
bool _fog_enabled
bool _dithering_enabled
bool _alpha_test_enabled
bool _polygon_offset_enabled
int _decal_level
int _cur_light_id
LMatrix4f _current_projection_mat
int _projection_mat_stack_count
int _max_clip_planes
PointerToArray< PlaneNode * > _available_clip_plane_ids
bool * _clip_plane_enabled
bool * _cur_clip_plane_enabled
int _cur_clip_plane_id
ConstPointerTo< DisplayRegion_actual_display_region
int _pass_number
PointerTo< SceneSetup_scene_setup
ConstPointerTo< RenderState_state
ConstPointerTo< TransformState_transform
int _buffer_mask
Colorf _color_clear_value
float _depth_clear_value
bool _stencil_clear_value
Colorf _accum_clear_value
int _clear_buffer_type
int _display_region_stack_level
int _frame_buffer_stack_level
int _lens_stack_level
ConstPointerTo< DisplayRegion_current_display_region
ConstPointerTo< Lens_current_lens
bool _normals_enabled
CoordinateSystem _coordinate_system
Colorf _scene_graph_color
bool _has_scene_graph_color
bool _scene_graph_color_stale
bool _vertex_colors_enabled
bool _lighting_enabled
bool _clip_planes_enabled
int _color_transform_enabled
LVecBase4f _current_color_offset
LVecBase4f _current_color_scale
ColorWriteAttrib::Mode _color_write_mode
ColorBlendAttrib::Mode _color_blend_mode
TransparencyAttrib::Mode _transparency_mode
bool _needs_reset
bool _closing_gsg

Static Private Attributes

TypeHandle _type_handle

Detailed Description

A GraphicsStateGuardian specialized for rendering into OpenGL contexts.

There should be no GL calls outside of this object.

Definition at line 81 of file crGraphicsStateGuardian.h.


Member Enumeration Documentation

enum GraphicsStateGuardian::ColorTransform [protected, inherited]
 

Enumeration values:
CT_offset 
CT_scale 

Definition at line 268 of file graphicsStateGuardian.h.


Constructor & Destructor Documentation

CRGraphicsStateGuardian::CRGraphicsStateGuardian GraphicsWindow win  ) 
 

Definition at line 141 of file crGraphicsStateGuardian.cxx.

CRGraphicsStateGuardian::~CRGraphicsStateGuardian  ) 
 

Definition at line 165 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_buffer_mask, activate(), free_pointers(), GraphicsStateGuardian::reset(), RenderBuffer::T_color, RenderBuffer::T_depth, and RenderBuffer::T_stencil.


Member Function Documentation

void CRGraphicsStateGuardian::activate  )  [inline, protected]
 

Sets this context to be the active context for future GL commands.

Definition at line 37 of file crGraphicsStateGuardian.I.

Referenced by ~CRGraphicsStateGuardian().

void GraphicsStateGuardian::add_to_geom_node_record GeomNodeContext  )  [inline, protected, inherited]
 

Definition at line 228 of file graphicsStateGuardian.h.

Referenced by GLGraphicsStateGuardian::prepare_geom_node().

void GraphicsStateGuardian::add_to_geom_record GeomContext  )  [inline, protected, inherited]
 

Definition at line 227 of file graphicsStateGuardian.h.

void GraphicsStateGuardian::add_to_texture_record TextureContext  )  [inline, protected, inherited]
 

Definition at line 226 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian8::draw_sphere().

void CRGraphicsStateGuardian::apply_fog Fog fog  ) 
 

Definition at line 2118 of file crGraphicsStateGuardian.cxx.

Referenced by issue_render_mode().

void CRGraphicsStateGuardian::apply_material const Material material  )  [virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 2070 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::apply_texture TextureContext tc  )  [virtual]
 

Makes the texture the currently available texture for rendering.

Reimplemented from GraphicsStateGuardian.

Definition at line 1609 of file crGraphicsStateGuardian.cxx.

References GeomNode::get_geom(), and dDrawable::is_dynamic().

bool CRGraphicsStateGuardian::apply_texture_immediate Texture tex  )  [protected]
 

Sends the texture image to GL.

This can be used to render a texture in immediate mode, or as part of the process of creating a GL texture object.

The return value is true if successful, or false if the texture has no image.

Definition at line 2956 of file crGraphicsStateGuardian.cxx.

References cr_supports_bgr, PixelBuffer::F_luminance, PixelBuffer::F_luminance_alpha, PixelBuffer::F_luminance_alphamask, PixelBuffer::F_rgba12, and PixelBuffer::F_rgba8.

void GraphicsStateGuardian::begin_bind_clip_planes  )  [protected, virtual, inherited]
 

Called immediately before bind_clip_plane() is called, this is intended to provide the derived class a hook in which to set up some state (like transform) that might apply to several planes.

The sequence is: begin_bind_clip_planes() will be called, then one or more bind_clip_plane() calls, then end_bind_clip_planes().

Reimplemented in GLGraphicsStateGuardian.

Definition at line 1540 of file graphicsStateGuardian.cxx.

References RenderState::make(), TextureAttrib::make_off(), and NULL.

void CRGraphicsStateGuardian::begin_bind_lights  )  [protected, virtual]
 

Called immediately before bind_light() is called, this is intended to provide the derived class a hook in which to set up some state (like transform) that might apply to several lights.

The sequence is: begin_bind_lights() will be called, then one or more bind_light() calls, then end_bind_lights().

Reimplemented from GraphicsStateGuardian.

Definition at line 3491 of file crGraphicsStateGuardian.cxx.

ConstPointerTo< RenderState > GraphicsStateGuardian::begin_decal_base_first  )  [virtual, inherited]
 

Called during draw to begin a three-step rendering phase to draw decals.

The first step, begin_decal_base_first(), is called prior to drawing the base geometry. It should set up whatever internal state is appropriate, as well as returning a RenderState object that should be applied to the base geometry for rendering.

Implements GraphicsStateGuardianBase.

Definition at line 714 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_has_scene_graph_color, GraphicsStateGuardian::_scene_graph_color_stale, GraphicsStateGuardian::_vertex_colors_enabled, and ColorAttrib::T_vertex.

ConstPointerTo< RenderState > GraphicsStateGuardian::begin_decal_base_second  )  [virtual, inherited]
 

Called during draw to begin a three-step rendering phase to draw decals.

The third step, begin_decal_base_second(), is called after drawing the base geometry and the nested decal geometry, and prior to drawing the base geometry one more time (if needed).

It should return a RenderState object appropriate for rendering the base geometry the second time, or NULL if it is not necessary to re-render the base geometry.

Implements GraphicsStateGuardianBase.

Definition at line 785 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_light_info, and GraphicsStateGuardian::enable_light().

ConstPointerTo< RenderState > GraphicsStateGuardian::begin_decal_nested  )  [virtual, inherited]
 

Called during draw to begin a three-step rendering phase to draw decals.

The second step, begin_decal_nested(), is called after drawing the base geometry and prior to drawing any of the nested decal geometry that is to be applied to the base geometry.

Implements GraphicsStateGuardianBase.

Definition at line 744 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_light_info, GraphicsStateGuardian::_lighting_enabled, GraphicsStateGuardian::_lighting_enabled_this_frame, Colorf, GraphicsStateGuardian::enable_lighting(), AmbientLight::get_class_type(), Light::get_color(), LightAttrib::get_light(), LightAttrib::get_num_lights(), LightAttrib::get_operation(), Light::get_type(), nassertv, NULL, and LightAttrib::O_remove.

bool GraphicsStateGuardian::begin_frame  )  [virtual, inherited]
 

Called before each frame is rendered, to allow the GSG a chance to do any internal cleanup before beginning the frame.

The return value is true if successful (in which case the frame will be drawn and end_frame() will be called later), or false if unsuccessful (in which case nothing will be drawn and end_frame() will not be called).

Reimplemented in DXGraphicsStateGuardian8, and GLGraphicsStateGuardian.

Definition at line 516 of file graphicsStateGuardian.cxx.

Referenced by GLGraphicsStateGuardian::prepare_lens().

bool GraphicsStateGuardian::begin_scene  )  [virtual, inherited]
 

Called between begin_frame() and end_frame() to mark the beginning of drawing commands for a "scene" (usually a particular DisplayRegion) within a frame.

All 3-D drawing commands, except the clear operation, must be enclosed within begin_scene() .. end_scene().

The return value is true if successful (in which case the scene will be drawn and end_scene() will be called later), or false if unsuccessful (in which case nothing will be drawn and end_scene() will not be called).

Reimplemented in DXGraphicsStateGuardian7, and DXGraphicsStateGuardian8.

Definition at line 595 of file graphicsStateGuardian.cxx.

References CPT, ColorWriteAttrib::M_off, ColorWriteAttrib::make(), RenderState::make(), and NULL.

Referenced by DXGraphicsStateGuardian8::issue_depth_offset().

void GraphicsStateGuardian::bind_clip_plane PlaneNode plane,
int  pane_id
[protected, virtual, inherited]
 

Called the first time a particular clipping plane has been bound to a given id within a frame, this should set up the associated hardware (or API) clipping plane with the plane's properties.

Reimplemented in DXGraphicsStateGuardian7, DXGraphicsStateGuardian8, and GLGraphicsStateGuardian.

Definition at line 1558 of file graphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::bind_light Spotlight light,
int  light_id
[virtual]
 

Called the first time a particular light has been bound to a given id within a frame, this should set up the associated hardware light with the light's properties.

Reimplemented from GraphicsStateGuardian.

Definition at line 2500 of file crGraphicsStateGuardian.cxx.

References RenderBuffer::T_back_left, RenderBuffer::T_back_right, RenderBuffer::T_front_left, RenderBuffer::T_front_right, and RenderBuffer::T_left.

void CRGraphicsStateGuardian::bind_light DirectionalLight light,
int  light_id
[virtual]
 

Called the first time a particular light has been bound to a given id within a frame, this should set up the associated hardware light with the light's properties.

Reimplemented from GraphicsStateGuardian.

Definition at line 2452 of file crGraphicsStateGuardian.cxx.

References chromium, and NULL.

void CRGraphicsStateGuardian::bind_light PointLight light,
int  light_id
[virtual]
 

Called the first time a particular light has been bound to a given id within a frame, this should set up the associated hardware light with the light's properties.

Reimplemented from GraphicsStateGuardian.

Definition at line 2405 of file crGraphicsStateGuardian.cxx.

References cr_depth_offset_decals.

void CRGraphicsStateGuardian::bind_texture TextureContext tc  )  [protected]
 

Definition at line 2778 of file crGraphicsStateGuardian.cxx.

References build_phony_mipmaps(), cr_force_mipmaps, cr_ignore_mipmaps, pb, save_mipmap_images(), tex, and Texture::uses_mipmaps().

void CRGraphicsStateGuardian::build_phony_mipmap_level int  level,
int  xsize,
int  ysize
[protected]
 

Generates a single colored mipmap level.

Definition at line 3796 of file crGraphicsStateGuardian.cxx.

Referenced by set_ambient_light().

void CRGraphicsStateGuardian::build_phony_mipmaps Texture tex  )  [protected]
 

Generates a series of colored mipmap levels to aid in visualizing the mipmap levels as the hardware applies them.

Definition at line 3750 of file crGraphicsStateGuardian.cxx.

Referenced by bind_texture().

void CRGraphicsStateGuardian::call_glAlphaFunc GLenum  func,
GLclampf  ref
[inline, protected]
 

Definition at line 607 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glBlendFunc GLenum  sfunc,
GLenum  dfunc
[inline, protected]
 

Definition at line 412 of file crGraphicsStateGuardian.I.

Referenced by get_depth_func_type().

void CRGraphicsStateGuardian::call_glClearAccum GLclampf  red,
GLclampf  green,
GLclampf  blue,
GLclampf  alpha
[inline, protected]
 

Definition at line 112 of file crGraphicsStateGuardian.I.

References _draw_buffer_mode, and INLINE.

void CRGraphicsStateGuardian::call_glClearColor GLclampf  red,
GLclampf  green,
GLclampf  blue,
GLclampf  alpha
[inline, protected]
 

Definition at line 55 of file crGraphicsStateGuardian.I.

References _clear_color_alpha, and _clear_color_blue.

void CRGraphicsStateGuardian::call_glClearDepth GLclampd  depth  )  [inline, protected]
 

Definition at line 77 of file crGraphicsStateGuardian.I.

References _clear_stencil, chromium, and INLINE.

void CRGraphicsStateGuardian::call_glClearStencil GLint  s  )  [inline, protected]
 

Definition at line 97 of file crGraphicsStateGuardian.I.

References _clear_accum_alpha, _clear_accum_blue, _clear_accum_green, _clear_accum_red, and chromium.

void CRGraphicsStateGuardian::call_glClipPlane GLenum  plane,
const double  equation[4]
[inline, protected]
 

void CRGraphicsStateGuardian::call_glCullFace GLenum  mode  )  [inline, protected]
 

void CRGraphicsStateGuardian::call_glDrawBuffer GLenum  mode  )  [inline, protected]
 

Definition at line 134 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glFogColor const Colorf color  )  [inline, protected]
 

Definition at line 588 of file crGraphicsStateGuardian.I.

References chromium.

void CRGraphicsStateGuardian::call_glFogDensity GLfloat  density  )  [inline, protected]
 

Definition at line 569 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glFogEnd GLfloat  end  )  [inline, protected]
 

Definition at line 550 of file crGraphicsStateGuardian.I.

References _alpha_func, _alpha_func_ref, and INLINE.

void CRGraphicsStateGuardian::call_glFogMode GLint  mode  )  [inline, protected]
 

Definition at line 494 of file crGraphicsStateGuardian.I.

References chromium.

void CRGraphicsStateGuardian::call_glFogStart GLfloat  start  )  [inline, protected]
 

Definition at line 531 of file crGraphicsStateGuardian.I.

References _fog_color, chromium, and INLINE.

void CRGraphicsStateGuardian::call_glLightModelLocal GLboolean  local  )  [inline, protected]
 

Definition at line 252 of file crGraphicsStateGuardian.I.

References INLINE.

void CRGraphicsStateGuardian::call_glLightModelTwoSide GLboolean  twoside  )  [inline, protected]
 

Definition at line 269 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glLineWidth GLfloat  width  )  [inline, protected]
 

Definition at line 374 of file crGraphicsStateGuardian.I.

References _blend_dest_func, and _blend_source_func.

void CRGraphicsStateGuardian::call_glPointSize GLfloat  size  )  [inline, protected]
 

Definition at line 393 of file crGraphicsStateGuardian.I.

Referenced by prepare_lens().

void CRGraphicsStateGuardian::call_glPolygonMode GLenum  mode  )  [inline, protected]
 

Definition at line 653 of file crGraphicsStateGuardian.I.

References _multisample_enabled, chromium, and GL_MULTISAMPLE_SGIS.

void CRGraphicsStateGuardian::call_glReadBuffer GLenum  mode  )  [inline, protected]
 

Definition at line 182 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glScissor GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height
[inline, protected]
 

Definition at line 214 of file crGraphicsStateGuardian.I.

References chromium.

void CRGraphicsStateGuardian::call_glShadeModel GLenum  mode  )  [inline, protected]
 

Set the shading model to be either GL_FLAT or GL_SMOOTH.

Definition at line 199 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glStencilFunc GLenum  func,
GLint  refval,
GLuint  mask
[inline, protected]
 

Definition at line 289 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::call_glStencilOp GLenum  fail,
GLenum  zfail,
GLenum  pass
[inline, protected]
 

Definition at line 335 of file crGraphicsStateGuardian.I.

References _line_width, chromium, INLINE, and width.

void CRGraphicsStateGuardian::call_glViewport GLint  x,
GLint  y,
GLsizei  width,
GLsizei  height
[inline, protected]
 

Definition at line 233 of file crGraphicsStateGuardian.I.

References _lmodel_twoside, chromium, and INLINE.

void GraphicsStateGuardian::clear DisplayRegion dr  )  [inline, inherited]
 

Clears the framebuffer within the indicated DisplayRegion, according to the flags indicated by the DisplayRegion object (inheriting from ClearableRegion).

Note that by default, a DisplayRegion does not have any clear flags set, in which case this function will do nothing.

Definition at line 146 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_state.

void GraphicsStateGuardian::clear ClearableRegion clearable  )  [inherited]
 

Clears the framebuffer within the current DisplayRegion, according to the flags indicated by the given ClearableRegion object.

Definition at line 445 of file graphicsStateGuardian.cxx.

Referenced by GraphicsStateGuardian::set_scene(), and GraphicsEngine::sync_frame().

void CRGraphicsStateGuardian::clear const RenderBuffer buffer,
const DisplayRegion region
[virtual]
 

Clears all of the indicated buffers to their assigned colors.

Definition at line 425 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::clear const RenderBuffer buffer  )  [virtual]
 

Clears all of the indicated buffers to their assigned colors.

Definition at line 349 of file crGraphicsStateGuardian.cxx.

void GraphicsStateGuardian::close_gsg  )  [protected, virtual, inherited]
 

This is called by the associated GraphicsWindow when close_window() is called.

It should null out the _win pointer and possibly free any open resources associated with the GSG.

Definition at line 1791 of file graphicsStateGuardian.cxx.

Referenced by GraphicsPipe::get_hw_channel().

float CRGraphicsStateGuardian::compute_distance_to const LPoint3f &  point  )  const [virtual]
 

This function may only be called during a render traversal; it will compute the distance to the indicated point, assumed to be in modelview coordinates, from the camera plane.

Implements GraphicsStateGuardianBase.

Definition at line 2619 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::copy_pixel_buffer PixelBuffer pb,
const DisplayRegion dr,
const RenderBuffer rb
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 2056 of file crGraphicsStateGuardian.cxx.

References chromium, TexMatrixAttrib::get_mat(), and report_errors().

void CRGraphicsStateGuardian::copy_pixel_buffer PixelBuffer pb,
const DisplayRegion dr
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1980 of file crGraphicsStateGuardian.cxx.

Referenced by issue_transformed_color(), and texture_to_pixel_buffer().

void CRGraphicsStateGuardian::copy_texture TextureContext tc,
const DisplayRegion dr,
const RenderBuffer rb
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1907 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::copy_texture TextureContext tc,
const DisplayRegion dr
[virtual]
 

Copy the pixel region indicated by the display region from the framebuffer into texture memory.

Implements GraphicsStateGuardianBase.

Definition at line 1864 of file crGraphicsStateGuardian.cxx.

References PixelBuffer::_image, PointerToArray< unsigned char >::empty_array(), PixelBuffer::get_num_components(), PixelBuffer::get_xsize(), PixelBuffer::get_ysize(), and pb.

Referenced by issue_transformed_color().

bool CRGraphicsStateGuardian::depth_offset_decals  )  [virtual]
 

Returns true if this GSG can implement decals using a DepthOffsetAttrib, or false if that is unreliable and the three-step rendering process should be used instead.

Reimplemented from GraphicsStateGuardian.

Definition at line 2571 of file crGraphicsStateGuardian.cxx.

virtual void GraphicsStateGuardian::do_clear const RenderBuffer buffer  )  [pure virtual, inherited]
 

Implemented in DXGraphicsStateGuardian7, DXGraphicsStateGuardian8, and GLGraphicsStateGuardian.

void CRGraphicsStateGuardian::draw_geom_node GeomNode node,
const RenderState state,
GeomNodeContext gnc
[virtual]
 

Draws a GeomNode previously indicated by a call to prepare_geom_node().

Reimplemented from GraphicsStateGuardian.

Definition at line 1780 of file crGraphicsStateGuardian.cxx.

References tex.

void CRGraphicsStateGuardian::draw_line GeomLine geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 595 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::draw_linestrip GeomLinestrip geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 662 of file crGraphicsStateGuardian.cxx.

virtual void CRGraphicsStateGuardian::draw_pixel_buffer PixelBuffer pb,
const DisplayRegion dr,
const RenderBuffer rb,
const NodeTransitions &  na = NodeTransitions()
[virtual]
 

virtual void CRGraphicsStateGuardian::draw_pixel_buffer PixelBuffer pb,
const DisplayRegion dr,
const NodeTransitions &  na = NodeTransitions()
[virtual]
 

Referenced by enable_lighting().

void CRGraphicsStateGuardian::draw_point GeomPoint geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 530 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::draw_polygon GeomPolygon geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1028 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::draw_quad GeomQuad geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1193 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::draw_sphere GeomSphere geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1475 of file crGraphicsStateGuardian.cxx.

References G_PER_VERTEX, and GeomIssuer::issue_color().

void CRGraphicsStateGuardian::draw_sprite GeomSprite geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 773 of file crGraphicsStateGuardian.cxx.

References tex.

void CRGraphicsStateGuardian::draw_tri GeomTri geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1112 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::draw_trifan GeomTrifan geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1373 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::draw_tristrip GeomTristrip geom,
GeomContext gc
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1272 of file crGraphicsStateGuardian.cxx.

References chromium, G_PER_COMPONENT, G_PER_PRIM, G_PER_VERTEX, GeomIssuer::issue_color(), GeomIssuer::issue_normal(), GeomIssuer::issue_texcoord(), GeomIssuer::issue_vertex(), and nassertv.

void CRGraphicsStateGuardian::dump_state void   ) 
 

Definition at line 3984 of file crGraphicsStateGuardian.cxx.

References GL_CLAMP_TO_EDGE, GL_CONSTANT_ALPHA, GL_CONSTANT_COLOR, GL_MAX_3D_TEXTURE_SIZE, GL_ONE_MINUS_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_COLOR, GL_PACK_IMAGE_HEIGHT, GL_PACK_SKIP_IMAGES, GL_PROXY_TEXTURE_3D, GL_RESCALE_NORMAL, GL_TEXTURE_3D, GL_TEXTURE_BASE_LEVEL, GL_TEXTURE_DEPTH, GL_TEXTURE_MAX_LEVEL, GL_TEXTURE_MAX_LOD, GL_TEXTURE_MIN_LOD, GL_TEXTURE_WRAP_R, GL_UNPACK_IMAGE_HEIGHT, GL_UNPACK_SKIP_IMAGES, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_5_6_5, and GL_UNSIGNED_SHORT_5_6_5_REV.

void CRGraphicsStateGuardian::enable_alpha_test bool  val  )  [inline, protected]
 

Definition at line 1044 of file crGraphicsStateGuardian.I.

References INLINE.

Referenced by get_depth_func_type().

void CRGraphicsStateGuardian::enable_blend bool  val  )  [inline, protected]
 

Definition at line 963 of file crGraphicsStateGuardian.I.

References chromium.

Referenced by get_depth_func_type().

void CRGraphicsStateGuardian::enable_clip_plane int  clip_plane,
bool  val
[inline, protected, virtual]
 

Intended to be overridden by a derived class to enable the indicated plane id.

A specific PlaneNode will already have been bound to this id via bind_clip_plane().

Reimplemented from GraphicsStateGuardian.

Definition at line 878 of file crGraphicsStateGuardian.I.

References _blend_enabled, chromium, and INLINE.

void GraphicsStateGuardian::enable_clip_planes bool  enable  )  [protected, virtual, inherited]
 

Intended to be overridden by a derived class to enable or disable the use of clipping planes overall.

This is called by issue_clip_plane() according to whether any planes are in use or not.

Definition at line 1496 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_transform_state_pcollector, and PStatCollector::add_level().

Referenced by GraphicsStateGuardian::issue_color().

void CRGraphicsStateGuardian::enable_depth_test bool  val  )  [inline, protected]
 

Definition at line 990 of file crGraphicsStateGuardian.I.

References chromium.

void CRGraphicsStateGuardian::enable_dither bool  val  )  [inline, protected]
 

Definition at line 778 of file crGraphicsStateGuardian.I.

void CRGraphicsStateGuardian::enable_fog bool  val  )  [inline, protected]
 

Definition at line 1017 of file crGraphicsStateGuardian.I.

References INLINE.

Referenced by issue_render_mode().

void CRGraphicsStateGuardian::enable_light int  light_id,
bool  enable
[protected, virtual]
 

Intended to be overridden by a derived class to enable the indicated light id.

A specific Light will already have been bound to this id via bind_light().

Reimplemented from GraphicsStateGuardian.

Definition at line 3460 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::enable_lighting bool  enable  )  [protected, virtual]
 

Intended to be overridden by a derived class to enable or disable the use of lighting overall.

This is called by issue_light() according to whether any lights are in use or not.

Reimplemented from GraphicsStateGuardian.

Definition at line 3420 of file crGraphicsStateGuardian.cxx.

References SavedFrameBuffer::_buffer, SavedFrameBuffer::_display_region, draw_pixel_buffer(), NULL, and RenderBuffer::T_depth.

void CRGraphicsStateGuardian::enable_line_smooth bool  val  )  [inline, protected]
 

Definition at line 737 of file crGraphicsStateGuardian.I.

References _stencil_test_enabled, and chromium.

void CRGraphicsStateGuardian::enable_multisample bool  val  )  [inline, protected]
 

Definition at line 712 of file crGraphicsStateGuardian.I.

References _dither_enabled, and chromium.

void CRGraphicsStateGuardian::enable_multisample_alpha_mask bool  val  )  [inline, protected]
 

Definition at line 934 of file crGraphicsStateGuardian.I.

References _fog_enabled, and chromium.

Referenced by get_depth_func_type().

void CRGraphicsStateGuardian::enable_multisample_alpha_one bool  val  )  [inline, protected]
 

Definition at line 905 of file crGraphicsStateGuardian.I.

References _depth_test_enabled, chromium, and INLINE.

Referenced by get_depth_func_type().

void GraphicsStateGuardian::enable_normals bool  val  )  [inline, inherited]
 

Definition at line 119 of file graphicsStateGuardian.h.

References CoordinateSystem, and INLINE.

void CRGraphicsStateGuardian::enable_point_smooth bool  val  )  [inline, protected]
 

Definition at line 757 of file crGraphicsStateGuardian.I.

References _texturing_enabled, chromium, and INLINE.

void CRGraphicsStateGuardian::enable_polygon_offset bool  val  )  [inline, protected]
 

Definition at line 1072 of file crGraphicsStateGuardian.I.

References GraphicsStateGuardian::_scene_graph_color, GraphicsStateGuardian::_scene_graph_color_stale, INLINE, and issue_transformed_color().

void CRGraphicsStateGuardian::enable_scissor bool  val  )  [inline, protected]
 

Definition at line 859 of file crGraphicsStateGuardian.I.

References chromium, and GL_SAMPLE_ALPHA_TO_MASK_SGIS.

void CRGraphicsStateGuardian::enable_stencil_test bool  val  )  [inline, protected]
 

Definition at line 805 of file crGraphicsStateGuardian.I.

References _clip_plane_enabled, chromium, and get_clip_plane_id().

void CRGraphicsStateGuardian::enable_texturing bool  val  )  [inline, protected]
 

Definition at line 832 of file crGraphicsStateGuardian.I.

References chromium, and GL_SAMPLE_ALPHA_TO_ONE_SGIS.

void GraphicsStateGuardian::end_bind_clip_planes  )  [protected, virtual, inherited]
 

Called after before bind_clip_plane() has been called one or more times (but before any geometry is issued or additional state is changed), this is intended to clean up any temporary changes to the state that may have been made by begin_bind_clip_planes().

Reimplemented in GLGraphicsStateGuardian.

Definition at line 1578 of file graphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::end_bind_lights  )  [protected, virtual]
 

Called after before bind_light() has been called one or more times (but before any geometry is issued or additional state is changed), this is intended to clean up any temporary changes to the state that may have been made by begin_bind_lights().

Reimplemented from GraphicsStateGuardian.

Definition at line 3521 of file crGraphicsStateGuardian.cxx.

void GraphicsStateGuardian::end_frame  )  [virtual, inherited]
 

Called after each frame is rendered, to allow the GSG a chance to do any internal cleanup after rendering the frame, and before the window flips.

Reimplemented in DXGraphicsStateGuardian7, DXGraphicsStateGuardian8, and GLGraphicsStateGuardian.

Definition at line 632 of file graphicsStateGuardian.cxx.

void GraphicsStateGuardian::end_scene  )  [virtual, inherited]
 

Called between begin_frame() and end_frame() to mark the end of drawing commands for a "scene" (usually a particular DisplayRegion) within a frame.

All 3-D drawing commands, except the clear operation, must be enclosed within begin_scene() .. end_scene().

Reimplemented in DXGraphicsStateGuardian7, and DXGraphicsStateGuardian8.

Definition at line 616 of file graphicsStateGuardian.cxx.

void GraphicsStateGuardian::finish_decal  )  [virtual, inherited]
 

Called during draw to clean up after decals are finished.

Implements GraphicsStateGuardianBase.

Definition at line 813 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_light_info.

virtual TypeHandle CRGraphicsStateGuardian::force_init_type void   )  [inline, virtual]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 353 of file crGraphicsStateGuardian.h.

void CRGraphicsStateGuardian::free_pointers  )  [protected, virtual]
 

Frees some memory that was explicitly allocated within the crgsg.

Reimplemented from GraphicsStateGuardian.

Definition at line 3659 of file crGraphicsStateGuardian.cxx.

Referenced by ~CRGraphicsStateGuardian().

TypeHandle CRGraphicsStateGuardian::get_class_type void   )  [static]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 3937 of file crGraphicsStateGuardian.cxx.

Referenced by wcrGraphicsWindow::make_current().

PlaneNode * GraphicsStateGuardian::get_clip_plane int  plane_id  )  const [inline, protected, inherited]
 

Returns the PlaneNode object that is bound to the indicated id, or NULL if no PlaneNode is bound.

Definition at line 552 of file graphicsStateGuardian.I.

GLenum CRGraphicsStateGuardian::get_clip_plane_id int  index  )  const [inline, protected]
 

Convert index to gl clip plane id.

Definition at line 1149 of file crGraphicsStateGuardian.I.

Referenced by enable_stencil_test().

CoordinateSystem GraphicsStateGuardian::get_coordinate_system  )  const [inline, inherited]
 

Returns the coordinate system in effect on this particular gsg.

Normally, this will be the default coordinate system, but it might be set differently at runtime.

Definition at line 521 of file graphicsStateGuardian.I.

const float & CRGraphicsStateGuardian::get_current_alpha_offset  )  const [inline]
 

Definition at line 1111 of file crGraphicsStateGuardian.I.

Referenced by get_image_type().

const float & CRGraphicsStateGuardian::get_current_alpha_scale  )  const [inline]
 

Definition at line 1123 of file crGraphicsStateGuardian.I.

Referenced by get_image_type().

const LMatrix4f & CRGraphicsStateGuardian::get_current_color_mat  )  const [inline]
 

Definition at line 1099 of file crGraphicsStateGuardian.I.

Referenced by get_image_type().

const DisplayRegion * GraphicsStateGuardian::get_current_display_region void   )  const [inline, inherited]
 

Returns the current display region being rendered to, as set by the last call to push_display_region() (or restored by pop_display_region()).

This display region will be made active (if it is not already) by a call to prepare_display_region().

Definition at line 269 of file graphicsStateGuardian.I.

References FrameBufferStack::_frame_buffer, GraphicsStateGuardian::_frame_buffer_stack_level, FrameBufferStack::_stack_level, and GraphicsStateGuardian::save_frame_buffer().

Referenced by PlanarReflector::init().

const Lens * GraphicsStateGuardian::get_current_lens  )  const [inline, inherited]
 

Returns the current lens being rendered with, as set by the last call to push_lens() (or restored by pop_lens()).

This lens will be made active (if it is not already) by a call to prepare_lens().

Definition at line 288 of file graphicsStateGuardian.I.

GLenum CRGraphicsStateGuardian::get_depth_func_type DepthTestAttrib::Mode  m  )  const [protected]
 

Maps from the depth func modes to gl version.

Definition at line 3299 of file crGraphicsStateGuardian.cxx.

References call_glBlendFunc(), enable_alpha_test(), enable_blend(), enable_multisample_alpha_mask(), enable_multisample_alpha_one(), TransparencyAttrib::M_alpha, TransparencyAttrib::M_alpha_sorted, TransparencyAttrib::M_multisample, and TransparencyAttrib::M_none.

GLenum CRGraphicsStateGuardian::get_depth_func_type DepthTestProperty::Mode  m  )  const [protected]
 

GLenum CRGraphicsStateGuardian::get_external_image_format PixelBuffer::Format  format  )  [protected]
 

Maps from the PixelBuffer's Format symbols to GL's.

Definition at line 3161 of file crGraphicsStateGuardian.cxx.

References chromium.

Referenced by set_blend_mode(), and set_read_buffer().

GLenum CRGraphicsStateGuardian::get_fog_mode_type Fog::Mode  m  )  const [protected]
 

GLenum CRGraphicsStateGuardian::get_image_type PixelBuffer::Type  type  )  [protected]
 

Maps from the PixelBuffer's internal Type symbols to GL's.

Definition at line 3131 of file crGraphicsStateGuardian.cxx.

References chromium, Colorf, get_current_alpha_offset(), get_current_alpha_scale(), and get_current_color_mat().

Referenced by set_blend_mode(), and set_read_buffer().

CoordinateSystem CRGraphicsStateGuardian::get_internal_coordinate_system  )  const [virtual]
 

Should be overridden by derived classes to return the coordinate system used internally by the GSG, if any one particular coordinate system is used.

The default, CS_default, indicates that the GSG can use any coordinate system.

If this returns other than CS_default, the GraphicsEngine will automatically convert all transforms into the indicated coordinate system.

Reimplemented from GraphicsStateGuardian.

Definition at line 2600 of file crGraphicsStateGuardian.cxx.

References chromium, Texture::get_magfilter(), Texture::get_minfilter(), get_texture_filter_type(), get_texture_wrap_mode(), Texture::get_wrapu(), Texture::get_wrapv(), and tex.

GLenum CRGraphicsStateGuardian::get_internal_image_format PixelBuffer::Format  format  )  [protected]
 

Maps from the PixelBuffer's Format symbols to a suitable internal format for GL textures.

Definition at line 3221 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_scene_setup, and chromium.

Referenced by set_read_buffer().

Light * GraphicsStateGuardian::get_light int  light_id  )  const [inline, protected, inherited]
 

Returns the Light object that is bound to the indicated id, or NULL if no Light is bound.

Definition at line 536 of file graphicsStateGuardian.I.

GLenum CRGraphicsStateGuardian::get_light_id int  index  )  const [inline, protected]
 

Convert index to gl light id.

Definition at line 1135 of file crGraphicsStateGuardian.I.

Referenced by issue_color_write(), and issue_depth_write().

GraphicsPipe * GraphicsStateGuardian::get_pipe  )  const [inline, inherited]
 

Returns the graphics pipe on which this GSG was created.

Definition at line 78 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_scene_setup, and INLINE.

Referenced by GraphicsEngine::terminate_threads().

const FrameBufferProperties & GraphicsStateGuardian::get_properties  )  const [inline, inherited]
 

Returns the frame buffer properties requested for this GSG.

All windows created for this GSG must be created with the same properties.

Definition at line 63 of file graphicsStateGuardian.I.

int ReferenceCount::get_ref_count  )  const [inline, inherited]
 

Returns the current reference count.

Definition at line 183 of file referenceCount.I.

Referenced by RenderState::determine_bin_index(), RenderEffects::determine_show_bounds(), FontPool::ns_garbage_collect(), TexturePool::ns_garbage_collect(), MaterialPool::ns_get_material(), and TexturePool::ns_release_texture().

RenderBuffer GraphicsStateGuardian::get_render_buffer int  buffer_type  )  [inherited]
 

Returns a RenderBuffer object suitable for operating on the requested set of buffers.

buffer_type is the union of all the desired RenderBuffer::Type values.

Definition at line 170 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_prepared_textures.

Referenced by release_geom_node().

SceneSetup * GraphicsStateGuardian::get_scene  )  const [inline, inherited]
 

Returns the SceneSetup object.

Definition at line 123 of file graphicsStateGuardian.I.

References INLINE, and GraphicsStateGuardian::reset().

GLenum CRGraphicsStateGuardian::get_stencil_action_type StencilProperty::Action  a  )  const [protected]
 

GLenum CRGraphicsStateGuardian::get_stencil_func_type StencilProperty::Mode  m  )  const [protected]
 

GLint CRGraphicsStateGuardian::get_texture_apply_mode_type TextureApplyAttrib::Mode  am  )  const [protected]
 

Maps from the texture environment's mode types to the corresponding OpenGL ids.

Definition at line 3277 of file crGraphicsStateGuardian.cxx.

References ColorBlendAttrib::M_add, and ColorBlendAttrib::M_multiply_add.

GLint CRGraphicsStateGuardian::get_texture_apply_mode_type TextureApplyProperty::Mode  am  )  const [protected]
 

GLenum CRGraphicsStateGuardian::get_texture_filter_type Texture::FilterType  ft  )  [protected]
 

Maps from the Texture's internal filter type symbols to GL's.

Definition at line 3084 of file crGraphicsStateGuardian.cxx.

References chromium.

Referenced by get_internal_coordinate_system().

GLenum CRGraphicsStateGuardian::get_texture_wrap_mode Texture::WrapMode  wm  )  [protected]
 

Maps from the Texture's internal wrap mode symbols to GL's.

Definition at line 3053 of file crGraphicsStateGuardian.cxx.

References RenderAttrib::M_always, RenderAttrib::M_equal, RenderAttrib::M_greater, RenderAttrib::M_greater_equal, RenderAttrib::M_less, RenderAttrib::M_less_equal, RenderAttrib::M_never, and RenderAttrib::M_not_equal.

Referenced by get_internal_coordinate_system().

const GraphicsThreadingModel & GraphicsStateGuardian::get_threading_model  )  const [inline, inherited]
 

Returns the threading model that was used to create this GSG.

Definition at line 93 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_scene_setup, and INLINE.

TypeHandle CRGraphicsStateGuardian::get_type void   )  const [virtual]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 3933 of file crGraphicsStateGuardian.cxx.

int TypedObject::get_type_index  )  const [inline, inherited]
 

Returns the internal index number associated with this object's TypeHandle, a unique number for each different type.

This is equivalent to get_type().get_index().

Definition at line 71 of file typedObject.I.

References TypeHandle::get_name(), TypedObject::get_type(), and INLINE.

ConstPointerTo< RenderState > GraphicsStateGuardian::get_unclipped_state  )  [static, protected, inherited]
 

Definition at line 1969 of file graphicsStateGuardian.cxx.

Referenced by GraphicsStateGuardian::set_depth_clear_value().

ConstPointerTo< RenderState > GraphicsStateGuardian::get_unlit_state  )  [static, protected, inherited]
 

Definition at line 1952 of file graphicsStateGuardian.cxx.

ConstPointerTo< RenderState > GraphicsStateGuardian::get_untextured_state  )  [static, protected, inherited]
 

Reimplemented in GLGraphicsStateGuardian.

Definition at line 1986 of file graphicsStateGuardian.cxx.

void GraphicsStateGuardian::init_frame_pstats  )  [inline, protected, inherited]
 

Definition at line 225 of file graphicsStateGuardian.h.

void CRGraphicsStateGuardian::init_type void   )  [static]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 3941 of file crGraphicsStateGuardian.cxx.

bool TypedObject::is_exact_type TypeHandle  handle  )  const [inline, inherited]
 

Returns true if the current object is the indicated type exactly.

Definition at line 101 of file typedObject.I.

Referenced by PT(), and CollisionNode::xform().

bool TypedObject::is_of_type TypeHandle  handle  )  const [inline, inherited]
 

Returns true if the current object is or derives from the indicated type.

Definition at line 86 of file typedObject.I.

Referenced by EggMaterialCollection::collapse_equivalent_materials(), EggTextureCollection::collapse_equivalent_textures(), DeferredNodeProperty::compose(), AnimBundleMaker::create_s_channel(), CharacterMaker::create_slider(), ProjectionScreen::cull_callback(), DataNode::define_output(), EggNode::determine_draw_order(), CharacterMaker::egg_to_index(), EggGroupUniquifier::EggGroupUniquifier(), EggPoolUniquifier::EggPoolUniquifier(), EggGroupNode::find_textures(), StaticTextFont::get_glyph(), EggMaterialCollection::insert_materials(), EggTextureCollection::insert_textures(), CharacterJoint::make_copy(), PT(), EggGroupNode::r_flatten_transforms(), EggGroupNode::r_transform_vertices(), EggGroupNode::recompute_polygon_normals(), CollisionLevelState::reserve(), PandaFramework::reset_frame_rate(), PandaFramework::set_texture(), EggGroupNode::steal_children(), and DataGraphTraverser::traverse().

virtual void GraphicsStateGuardianBase::issue_alpha_test const AlphaTestAttrib  )  [inline, virtual, inherited]
 

Reimplemented in DXGraphicsStateGuardian7, DXGraphicsStateGuardian8, and GLGraphicsStateGuardian.

Definition at line 186 of file graphicsStateGuardianBase.h.

Referenced by AlphaTestAttrib::make().

void GraphicsStateGuardian::issue_clip_plane const ClipPlaneAttrib attrib  )  [virtual, inherited]
 

This is fundametically similar to issue_light(), with calls to slot_new_clip_plane(), apply_clip_plane(), and enable_clip_planes(), as appropriate.

Reimplemented from GraphicsStateGuardianBase.

Definition at line 1158 of file graphicsStateGuardian.cxx.

void GraphicsStateGuardian::issue_color const ColorAttrib attrib  )  [virtual, inherited]
 

This method is defined in the base class because it is likely that this functionality will be used for all (or at least most) kinds of GraphicsStateGuardians--it's not specific to any one rendering backend.

The ColorAttribute just changes the interpretation of the color on the vertices, and fiddles with _vertex_colors_enabled, etc.

Reimplemented from GraphicsStateGuardianBase.

Definition at line 905 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_clip_plane_info, GraphicsStateGuardian::_clip_planes_enabled, GraphicsStateGuardian::_clip_planes_enabled_this_frame, GraphicsStateGuardian::enable_clip_plane(), GraphicsStateGuardian::enable_clip_planes(), ClipPlaneAttrib::get_num_planes(), ClipPlaneAttrib::get_operation(), ClipPlaneAttrib::get_plane(), ClipPlaneAttrib::has_plane(), nassertv, NULL, ClipPlaneAttrib::O_remove, and GraphicsStateGuardian::slot_new_clip_plane().

Referenced by GLGraphicsStateGuardian::draw_point(), GLGraphicsStateGuardian::draw_quad(), and prepare_lens().

void GraphicsStateGuardian::issue_color_blend const ColorBlendAttrib attrib  )  [virtual, inherited]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 1140 of file graphicsStateGuardian.cxx.

void GraphicsStateGuardian::issue_color_scale const ColorScaleAttrib attrib  )  [virtual, inherited]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 868 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::end_bind_lights().

void CRGraphicsStateGuardian::issue_color_write const ColorWriteAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 2263 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_scene_setup, chromium, Colorf, Light::get_color(), get_light_id(), NodePath::get_mat(), PointLight::get_point(), and PointLight::get_specular_color().

void CRGraphicsStateGuardian::issue_cull_face const CullFaceAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2323 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::issue_depth_offset const DepthOffsetAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2374 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::issue_depth_test const DepthTestAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2286 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::issue_depth_write const DepthWriteAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2305 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_scene_setup, chromium, Colorf, Light::get_color(), DirectionalLight::get_direction(), get_light_id(), NodePath::get_mat(), and DirectionalLight::get_specular_color().

void CRGraphicsStateGuardian::issue_fog const FogAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2354 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_scene_setup, chromium, and Colorf.

void GraphicsStateGuardian::issue_light const LightAttrib attrib  )  [virtual, inherited]
 

The default implementation of issue_light() assumes we have a limited number of hardware lights available.

This function assigns each light to a different hardware light id, trying to keep each light associated with the same id where possible, but reusing id's when necessary. When it is no longer possible to reuse existing id's (e.g. all id's are in use), slot_new_light() is called to prepare the next sequential light id.

It will call apply_light() each time a light is assigned to a particular id for the first time in a given frame, and it will subsequently call enable_light() to enable or disable each light as the frame is rendered, as well as enable_lighting() to enable or disable overall lighting.

If this model of hardware lights with id's does not apply to a particular graphics engine, it should override this function to do something more appropriate instead.

Reimplemented from GraphicsStateGuardianBase.

Definition at line 983 of file graphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::issue_material const MaterialAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2201 of file crGraphicsStateGuardian.cxx.

References chromium, CullFaceAttrib::M_cull_clockwise, and CullFaceAttrib::M_cull_counter_clockwise.

void CRGraphicsStateGuardian::issue_render_mode const RenderModeAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2221 of file crGraphicsStateGuardian.cxx.

References apply_fog(), enable_fog(), FogAttrib::get_fog(), FogAttrib::is_off(), nassertv, NULL, and report_errors().

void CRGraphicsStateGuardian::issue_scene_graph_color  )  [inline, protected]
 

Checks whether the scene graph color needs to be issued, and sends the appropriate chromium.Color command if it does.

Definition at line 1179 of file crGraphicsStateGuardian.I.

Referenced by prepare_lens().

virtual void GraphicsStateGuardianBase::issue_stencil const StencilAttrib *   )  [inline, virtual, inherited]
 

Definition at line 204 of file graphicsStateGuardianBase.h.

virtual void GraphicsStateGuardianBase::issue_tex_gen const TexGenAttrib *   )  [inline, virtual, inherited]
 

Definition at line 203 of file graphicsStateGuardianBase.h.

void CRGraphicsStateGuardian::issue_tex_matrix const TexMatrixAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2167 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::issue_texture const TextureAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2181 of file crGraphicsStateGuardian.cxx.

References chromium, DepthWriteAttrib::M_off, and DepthWriteAttrib::Mode.

void CRGraphicsStateGuardian::issue_texture_apply const TextureApplyAttrib attrib  )  [virtual]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 2249 of file crGraphicsStateGuardian.cxx.

References chromium.

void CRGraphicsStateGuardian::issue_transform const TransformState transform  )  [virtual]
 

Sends the indicated transform matrix to the graphics API to be applied to future vertices.

Reimplemented from GraphicsStateGuardian.

Definition at line 2148 of file crGraphicsStateGuardian.cxx.

References chromium, ColorWriteAttrib::M_off, and ColorWriteAttrib::Mode.

void CRGraphicsStateGuardian::issue_transformed_color const Colorf color  )  const
 

Transform the color by the current color matrix, and calls the appropriate chromium.Color function.

Definition at line 3385 of file crGraphicsStateGuardian.cxx.

References RenderBuffer::_buffer_type, copy_pixel_buffer(), copy_texture(), PixelBuffer::depth_buffer(), DisplayRegion::get_pixel_height(), DisplayRegion::get_pixel_width(), RenderBuffer::T_back, and RenderBuffer::T_depth.

Referenced by enable_polygon_offset().

void GraphicsStateGuardian::issue_transparency const TransparencyAttrib attrib  )  [virtual, inherited]
 

Reimplemented from GraphicsStateGuardianBase.

Definition at line 1127 of file graphicsStateGuardian.cxx.

GraphicsStateGuardian * CRGraphicsStateGuardian::make_GlGraphicsStateGuardian const FactoryParams params  )  [static]
 

Definition at line 3921 of file crGraphicsStateGuardian.cxx.

bool GraphicsStateGuardian::mark_prepared_geom GeomContext gc  )  [protected, inherited]
 

This is intended to be called from within prepare_geom().

It adds the indicated GeomContext pointer to the _prepared_geoms set, and returns true if it was successfully added (i.e. it was not already in the set).

Definition at line 1671 of file graphicsStateGuardian.cxx.

bool GraphicsStateGuardian::mark_prepared_geom_node GeomNodeContext gnc  )  [protected, inherited]
 

This is intended to be called from within prepare_geom_node().

It adds the indicated GeomNodeContext pointer to the _prepared_geom_nodes set, and returns true if it was successfully added (i.e. it was not already in the set).

Definition at line 1725 of file graphicsStateGuardian.cxx.

bool GraphicsStateGuardian::mark_prepared_texture TextureContext tc  )  [protected, inherited]
 

This is intended to be called from within prepare_texture().

It adds the indicated TextureContext pointer to the _prepared_textures set, and returns true if it was successfully added (i.e. it was not already in the set).

Definition at line 1617 of file graphicsStateGuardian.cxx.

Referenced by RIBGraphicsStateGuardian::draw_sprite().

void GraphicsStateGuardian::modify_state const RenderState state  )  [inline, inherited]
 

Applies the attributes indicated in the state set to the current state, and issues the changes to the graphics hardware.

Any transitions not mentioned are left unchanged.

Definition at line 187 of file graphicsStateGuardian.I.

Referenced by GLGraphicsStateGuardian::copy_texture(), and GraphicsStateGuardian::set_depth_clear_value().

void GraphicsStateGuardian::pop_display_region DisplayRegionStack node  )  [inline, inherited]
 

Restores the display region previously in effect, before the matching call to push_display_region().

The newly-restored display region will not actually be made active for rendering until the next call to prepare_display_region(). This is a state-changing optimization.

Definition at line 347 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_current_lens, and GraphicsStateGuardian::prepare_lens().

Referenced by GraphicsStateGuardian::set_scene().

void GraphicsStateGuardian::pop_frame_buffer FrameBufferStack node  )  [inline, inherited]
 

Restores the contents of the frame buffer as saved by a previous call to push_frame_buffer().

Definition at line 392 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_clip_plane_info, INLINE, nassertr, and NULL.

void GraphicsStateGuardian::pop_lens LensStack stack  )  [inline, inherited]
 

Restores the lens previously in effect, before the matching call to push_lens().

The newly-restored lens will not actually be made active for rendering until the next call to prepare_lens(). This is a state-changing optimization.

Definition at line 453 of file graphicsStateGuardian.I.

void CRGraphicsStateGuardian::prepare_display_region  )  [virtual]
 

Prepare a display region for rendering (set up scissor region and viewport).

Implements GraphicsStateGuardian.

Definition at line 443 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_current_lens, chromium, CS_yup_right, and NULL.

GeomContext * GraphicsStateGuardian::prepare_geom Geom geom  )  [virtual, inherited]
 

Prepares the indicated Geom for retained-mode rendering.

The value returned by this function will be passed back into future calls to draw_tristrip(), etc., along with the Geom pointer.

Implements GraphicsStateGuardianBase.

Definition at line 365 of file graphicsStateGuardian.cxx.

References RenderBuffer::T_depth.

GeomNodeContext * CRGraphicsStateGuardian::prepare_geom_node GeomNode node  )  [virtual]
 

Prepares the indicated GeomNode for retained-mode rendering.

If this function returns non-NULL, the value returned will be passed back to a future call to draw_geom_node(), which is expected to draw the contents of the node.

Reimplemented from GraphicsStateGuardian.

Definition at line 1679 of file crGraphicsStateGuardian.cxx.

References NULL.

bool CRGraphicsStateGuardian::prepare_lens  )  [virtual]
 

Makes the current lens (whichever lens was most recently specified with push_lens()) active, so that it will transform future rendered geometry.

Normally this is only called from the draw process, and usually it is called immediately after a call to push_lens().

The return value is true if the lens is acceptable, false if it is not.

Reimplemented from GraphicsStateGuardian.

Definition at line 490 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_color_transform_enabled, GraphicsStateGuardian::_draw_primitive_pcollector, GraphicsStateGuardian::_vertices_other_pcollector, PStatCollector::add_level(), call_glPointSize(), Geom::get_num_prims(), Geom::get_num_vertices(), GeomPoint::get_size(), GraphicsStateGuardian::issue_color(), issue_color_gl(), issue_normal_gl(), issue_scene_graph_color(), issue_texcoord_gl(), issue_transformed_color_gl(), issue_vertex_gl(), GeomIssuer::IssueColor, Geom::make_color_iterator(), Geom::make_normal_iterator(), Geom::make_texcoord_iterator(), and Geom::make_vertex_iterator().

TextureContext * CRGraphicsStateGuardian::prepare_texture Texture tex  )  [virtual]
 

Creates a new retained-mode representation of the given texture, and returns a newly-allocated TextureContext pointer to reference it.

It is the responsibility of the calling function to later call release_texture() with this same pointer (which will also delete the pointer).

Reimplemented from GraphicsStateGuardian.

Definition at line 1577 of file crGraphicsStateGuardian.cxx.

References tex.

void CRGraphicsStateGuardian::print_gfx_visual  ) 
 

Prints a description of the current visual selected.

Definition at line 3327 of file crGraphicsStateGuardian.cxx.

References TransparencyAttrib::M_binary, and TransparencyAttrib::M_multisample_mask.

DisplayRegionStack GraphicsStateGuardian::push_display_region const DisplayRegion dr  )  [inline, inherited]
 

Saves the current display region information and sets up a new display region for rendering.

The return value from this function must eventually be passed to a matching pop_display_region() call.

The new display region will not actually be made active for rendering until the next call to prepare_display_region(). This is a state-changing optimization.

Definition at line 317 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_current_lens, GraphicsStateGuardian::_lens_stack_level, LensStack::_stack_level, INLINE, and nassertv.

Referenced by GLGraphicsStateGuardian::bind_texture(), and GraphicsStateGuardian::set_scene().

FrameBufferStack GraphicsStateGuardian::push_frame_buffer const RenderBuffer buffer,
const DisplayRegion dr
[inline, inherited]
 

Saves the contents of the frame buffer (within the indicated display region only) so that rendering may be performed (for instance, to render a partial in a multipass algorithm) and the frame buffer later restored via a matching call to pop_frame_buffer().

Definition at line 372 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_coordinate_system, CoordinateSystem, and INLINE.

Referenced by GLGraphicsStateGuardian::release_geom_node(), and release_geom_node().

LensStack GraphicsStateGuardian::push_lens const Lens lens  )  [inline, inherited]
 

Saves the current lens information and sets up a new lens for rendering.

The return value from this function must eventually be passed to a matching pop_lens() call.

The new lens will not actually be made active for rendering until the next call to prepare_lens(). This is a state-changing optimization.

Definition at line 423 of file graphicsStateGuardian.I.

void GraphicsStateGuardian::record_state_change TypeHandle   )  [inline, protected, inherited]
 

Definition at line 229 of file graphicsStateGuardian.h.

References Colorf.

int ReferenceCount::ref  )  const [inline, inherited]
 

Explicitly increments the reference count.

User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically.

This function is const, even though it changes the object, because generally fiddling with an object's reference count isn't considered part of fiddling with the object. An object might be const in other ways, but we still need to accurately count the number of references to it.

The return value is the new reference count.

Definition at line 225 of file referenceCount.I.

Referenced by ClientDevice::ClientDevice(), EggGroupNode::find_textures(), EggGroupNode::r_apply_texmats(), EggGroupNode::r_flatten_transforms(), and EggGroupNode::reverse_vertex_ordering().

void GraphicsStateGuardian::release_all_geoms  )  [inherited]
 

Frees the resources for all Geoms and GeomNodes associated with this GSG.

Warning! This may make the Geoms unrenderable, if the Panda-level information has been deleted.

Definition at line 218 of file graphicsStateGuardian.cxx.

References NULL.

void GraphicsStateGuardian::release_all_textures  )  [inherited]
 

Frees the resources for all textures associated with this GSG.

Definition at line 185 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_prepared_geom_nodes, GraphicsStateGuardian::_prepared_geoms, nassertv, GraphicsStateGuardian::release_geom(), and GraphicsStateGuardian::release_geom_node().

void GraphicsStateGuardian::release_geom GeomContext gc  )  [virtual, inherited]
 

Frees the resources previously allocated via a call to prepare_geom(), including deleting the GeomContext itself, if necessary.

Implements GraphicsStateGuardianBase.

Definition at line 382 of file graphicsStateGuardian.cxx.

Referenced by GraphicsStateGuardian::release_all_textures().

void CRGraphicsStateGuardian::release_geom_node GeomNodeContext gnc  )  [virtual]
 

Frees the resources previously allocated via a call to prepare_geom_node(), including deleting the GeomNodeContext itself, if necessary.

Reimplemented from GraphicsStateGuardian.

Definition at line 1824 of file crGraphicsStateGuardian.cxx.

References Texture::_pbuffer, TextureContext::_texture, GraphicsStateGuardian::get_render_buffer(), nassertv, NULL, pb, PT, GraphicsStateGuardian::push_frame_buffer(), RenderBuffer::T_back, RenderBuffer::T_depth, and tex.

void CRGraphicsStateGuardian::release_texture TextureContext tc  )  [virtual]
 

Frees the GL resources previously allocated for the texture.

Reimplemented from GraphicsStateGuardian.

Definition at line 1640 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_vertices_other_pcollector, GraphicsStateGuardian::_vertices_tri_pcollector, GraphicsStateGuardian::_vertices_trifan_pcollector, GraphicsStateGuardian::_vertices_tristrip_pcollector, and chromium.

void CRGraphicsStateGuardian::reset  )  [virtual]
 

Resets all internal state as if the gsg were newly created.

Reimplemented from GraphicsStateGuardian.

Definition at line 182 of file crGraphicsStateGuardian.cxx.

References GraphicsStateGuardian::_buffer_mask, chromium, GLboolean(), and RenderBuffer::T_accum.

void GraphicsStateGuardian::reset_if_new  )  [inline, inherited]
 

Calls reset() to initialize the GSG, but only if it hasn't been called yet.

Definition at line 164 of file graphicsStateGuardian.I.

References RenderState::write().

Referenced by glxGraphicsWindow::~glxGraphicsWindow(), and wglGraphicsWindow::~wglGraphicsWindow().

void CRGraphicsStateGuardian::restore_frame_buffer SavedFrameBuffer frame_buffer  )  [protected, virtual]
 

Restores the frame buffer that was previously saved.

Implements GraphicsStateGuardian.

Definition at line 3719 of file crGraphicsStateGuardian.cxx.

PointerTo< SavedFrameBuffer > CRGraphicsStateGuardian::save_frame_buffer const RenderBuffer buffer,
ConstPointerTo< DisplayRegion dr
[protected, virtual]
 

Saves the indicated planes of the frame buffer (within the indicated display region) and returns it in some meaningful form that can be restored later via restore_frame_buffer().

This is a helper function for push_frame_buffer() and pop_frame_buffer().

Implements GraphicsStateGuardian.

Definition at line 3689 of file crGraphicsStateGuardian.cxx.

void CRGraphicsStateGuardian::save_mipmap_images Texture tex  )  [protected]
 

Saves out each mipmap level of the indicated texture (which must also be the currently active texture in the GL state) as a separate image file to disk.

Definition at line 3871 of file crGraphicsStateGuardian.cxx.

Referenced by bind_texture().

void CRGraphicsStateGuardian::set_ambient_light const Colorf color  )  [protected, virtual]
 

Intended to be overridden by a derived class to indicate the color of the ambient light that should be in effect.

This is called by issue_light() after all other lights have been enabled or disabled.

Reimplemented from GraphicsStateGuardian.

Definition at line 3443 of file crGraphicsStateGuardian.cxx.

References build_phony_mipmap_level(), and tex.

void CRGraphicsStateGuardian::set_blend_mode ColorWriteAttrib::Mode  color_write_mode,
ColorBlendAttrib::Mode  color_blend_mode,
TransparencyAttrib::Mode  transparency_mode
[protected, virtual]
 

Called after any of these three blending states have changed; this function is responsible for setting the appropriate color blending mode based on the given properties.

Reimplemented from GraphicsStateGuardian.

Definition at line 3541 of file crGraphicsStateGuardian.cxx.

References chromium, Filename::empty(), format_string(), Filename::get_basename_wo_extension(), PixelBuffer::get_component_width(), get_external_image_format(), PixelBuffer::get_format(), PixelBuffer::get_image_type(), get_image_type(), Namable::get_name(), PixelBuffer::get_num_components(), Texture::get_ram_image(), PixelBuffer::get_xsize(), PixelBuffer::get_ysize(), nassertv, nout, NULL, pb, PT, set_pack_alignment(), and tex.

void GraphicsStateGuardian::set_color_clear_value const Colorf value  )  [virtual, inherited]
 

Sets the color that the next do_clear() command will set the color buffer to.

Reimplemented in DXGraphicsStateGuardian7, and DXGraphicsStateGuardian8.

Definition at line 413 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_light_info, and GraphicsStateGuardian::enable_light().

void GraphicsStateGuardian::set_coordinate_system CoordinateSystem  cs  )  [inline, inherited]
 

Changes the coordinate system in effect on this particular gsg.

Normally, this will be the default coordinate system, but it might be set differently at runtime.

Definition at line 502 of file graphicsStateGuardian.I.

void GraphicsStateGuardian::set_depth_clear_value const float  value  )  [virtual, inherited]
 

Sets the depth that the next do_clear() command will set the depth buffer to.

Definition at line 428 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_clip_plane_info, GraphicsStateGuardian::_clip_planes_enabled_this_frame, GraphicsStateGuardian::enable_clip_plane(), GraphicsStateGuardian::get_unclipped_state(), GraphicsStateGuardian::modify_state(), and NULL.

void CRGraphicsStateGuardian::set_draw_buffer const RenderBuffer rb  )  [protected]
 

Sets up the chromium.DrawBuffer to render into the buffer indicated by the RenderBuffer object.

This only sets up the color bits; it does not affect the depth, stencil, accum layers.

Definition at line 2674 of file crGraphicsStateGuardian.cxx.

References GL_UNSIGNED_BYTE_3_3_2_EXT.

bool GraphicsStateGuardian::set_lens const Lens lens  )  [inline, inherited]
 

Sets a new lens for rendering without bothering to push or pop.

This replaces the lens most recently pushed, if any. There is no need to call prepare_lens() following this call.

The return value is true if the lens is acceptable, false if it is not.

Definition at line 482 of file graphicsStateGuardian.I.

void CRGraphicsStateGuardian::set_pack_alignment GLint  alignment  )  [inline, protected]
 

Definition at line 682 of file crGraphicsStateGuardian.I.

References chromium.

Referenced by set_blend_mode().

void CRGraphicsStateGuardian::set_read_buffer const RenderBuffer rb  )  [protected]
 

Sets up the chromium.ReadBuffer to render into the buffer indicated by the RenderBuffer object.

This only sets up the color bits; it does not affect the depth, stencil, accum layers.

Definition at line 2729 of file crGraphicsStateGuardian.cxx.

References PixelBuffer::_image, compute_cr_image_size(), cr_supports_bgr, get_external_image_format(), PixelBuffer::get_format(), PixelBuffer::get_image_type(), get_image_type(), get_internal_image_format(), Texture::get_ram_image(), PixelBuffer::get_xsize(), PixelBuffer::get_ysize(), nassertr, NULL, pb, set_unpack_alignment(), PointerToArray< unsigned char >::size(), PixelBuffer::T_unsigned_byte, tex, uchar, uchar_bgr_to_rgb(), and uchar_bgra_to_rgba().

Referenced by texture_to_pixel_buffer().

void GraphicsStateGuardian::set_scene SceneSetup scene_setup  )  [inline, inherited]
 

Sets the SceneSetup object that indicates the initial camera position, etc.

This must be called before traversal begins.

Definition at line 110 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::clear(), GraphicsStateGuardian::pop_display_region(), GraphicsStateGuardian::prepare_display_region(), and GraphicsStateGuardian::push_display_region().

void GraphicsStateGuardian::set_state const RenderState state  )  [inline, inherited]
 

Applies the attributes indicated in the state set to the current state, and issues the changes to the graphics hardware.

The state is taken to be a complete description of what the graphics state should be; any transitions not mentioned are implicitly reset to their initial values.

Definition at line 220 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_current_display_region, DisplayRegionStack::_display_region, GraphicsStateGuardian::_display_region_stack_level, DisplayRegionStack::_stack_level, and INLINE.

void GraphicsStateGuardian::set_state_and_transform const RenderState state,
const TransformState transform
[virtual, inherited]
 

Simultaneously resets the render state and the transform state.

Implements GraphicsStateGuardianBase.

Definition at line 396 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_light_info.

void GraphicsStateGuardian::set_transform const TransformState transform  )  [inline, inherited]
 

Sets the world transform that will be applied to subsequent geometry.

This is normally called only during the draw process, immediately before issuing geometry commands.

Definition at line 245 of file graphicsStateGuardian.I.

References GraphicsStateGuardian::_current_display_region, DisplayRegionStack::_display_region, GraphicsStateGuardian::_display_region_stack_level, DisplayRegionStack::_stack_level, INLINE, and nassertv.

void CRGraphicsStateGuardian::set_unpack_alignment GLint  alignment  )  [inline, protected]
 

Definition at line 697 of file crGraphicsStateGuardian.I.

References chromium.

Referenced by set_read_buffer().

bool GraphicsStateGuardian::slot_new_clip_plane int  plane_id  )  [protected, virtual, inherited]
 

This will be called by the base class before a particular clip plane id will be used for the first time.

It is intended to allow the derived class to reserve any additional resources, if required, for the new clip plane; and also to indicate whether the hardware supports this many simultaneous clipping planes.

The return value should be true if the additional plane is supported, or false if it is not.

Reimplemented in DXGraphicsStateGuardian7, DXGraphicsStateGuardian8, and GLGraphicsStateGuardian.

Definition at line 1477 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_active_geom_node_pcollector, and PStatCollector::add_level().

Referenced by GraphicsStateGuardian::issue_color().

bool GraphicsStateGuardian::slot_new_light int  light_id  )  [protected, virtual, inherited]
 

This will be called by the base class before a particular light id will be used for the first time.

It is intended to allow the derived class to reserve any additional resources, if required, for the new light; and also to indicate whether the hardware supports this many simultaneous lights.

The return value should be true if the additional light is supported, or false if it is not.

Reimplemented in GLGraphicsStateGuardian.

Definition at line 1348 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_prepared_geom_nodes, GraphicsStateGuardian::_total_geom_node_pcollector, and PStatCollector::sub_level().

void CRGraphicsStateGuardian::specify_texture Texture tex  )  [protected]
 

Definition at line 2800 of file crGraphicsStateGuardian.cxx.

void ReferenceCount::test_ref_count_integrity  )  const [inline, inherited]
 

Does some easy checks to make sure that the reference count isn't completely bogus.

Definition at line 328 of file referenceCount.I.

References INLINE.

Referenced by EggNode::determine_bin(), and ReferenceCount::~ReferenceCount().

void CRGraphicsStateGuardian::texture_to_pixel_buffer TextureContext tc,
PixelBuffer pb,
const DisplayRegion dr
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1950 of file crGraphicsStateGuardian.cxx.

References copy_pixel_buffer(), pb, and set_read_buffer().

void CRGraphicsStateGuardian::texture_to_pixel_buffer TextureContext tc,
PixelBuffer pb
[virtual]
 

Implements GraphicsStateGuardianBase.

Definition at line 1921 of file crGraphicsStateGuardian.cxx.

void GraphicsStateGuardian::traverse_prepared_textures bool(*  pertex_callbackfn)(TextureContext *, void *),
void *  callback_arg
[inherited]
 

Definition at line 1995 of file graphicsStateGuardian.cxx.

Referenced by DXGraphicsStateGuardian8::slot_new_clip_plane().

bool GraphicsStateGuardian::unmark_prepared_geom GeomContext gc  )  [protected, inherited]
 

This is intended to be called from within release_geom().

It removes the indicated GeomContext pointer from the _prepared_geoms set, and returns true if it was successfully removed (i.e. it had been in the set).

Definition at line 1698 of file graphicsStateGuardian.cxx.

bool GraphicsStateGuardian::unmark_prepared_geom_node GeomNodeContext gnc  )  [protected, inherited]
 

This is intended to be called from within release_geom_node().

It removes the indicated GeomNodeContext pointer from the _prepared_geom_nodes set, and returns true if it was successfully removed (i.e. it had been in the set).

Definition at line 1752 of file graphicsStateGuardian.cxx.

bool GraphicsStateGuardian::unmark_prepared_texture TextureContext tc  )  [protected, inherited]
 

This is intended to be called from within release_texture().

It removes the indicated TextureContext pointer from the _prepared_textures set, and returns true if it was successfully removed (i.e. it had been in the set).

Definition at line 1644 of file graphicsStateGuardian.cxx.

int ReferenceCount::unref  )  const [inline, inherited]
 

Explicitly decrements the reference count.

Note that the object will not be implicitly deleted by unref() simply because the reference count drops to zero. (Having a member function delete itself is problematic; plus, we don't have a virtual destructor anyway.) However, see the helper function unref_delete().

User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically.

This function is const, even though it changes the object, because generally fiddling with an object's reference count isn't considered part of fiddling with the object. An object might be const in other ways, but we still need to accurately count the number of references to it.

The return value is the new reference count.

Definition at line 293 of file referenceCount.I.

References INLINE.

Referenced by RenderState::determine_bin_index(), and RenderEffects::determine_show_bounds().

bool GraphicsStateGuardian::wants_colors void   )  const [virtual, inherited]
 

Returns true if the GSG should issue geometry color commands, false otherwise.

Implements GraphicsStateGuardianBase.

Reimplemented in RIBGraphicsStateGuardian.

Definition at line 670 of file graphicsStateGuardian.cxx.

References GraphicsStateGuardian::_color_transform_enabled, GraphicsStateGuardian::_current_color_scale, and GraphicsStateGuardian::CT_scale.

Referenced by GLGraphicsStateGuardian::draw_point(), and GLGraphicsStateGuardian::draw_quad().

bool CRGraphicsStateGuardian::wants_normals void   )  const [virtual]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 2540 of file crGraphicsStateGuardian.cxx.

References RenderBuffer::T_back, RenderBuffer::T_left, and RenderBuffer::T_right.

bool CRGraphicsStateGuardian::wants_texcoords void   )  const [virtual]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 2552 of file crGraphicsStateGuardian.cxx.

References RenderBuffer::T_back_left, RenderBuffer::T_back_right, RenderBuffer::T_front_left, and RenderBuffer::T_front_right.


Member Data Documentation

Colorf GraphicsStateGuardian::_accum_clear_value [protected, inherited]
 

Definition at line 246 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::reset().

PStatCollector GraphicsStateGuardian::_active_geom_node_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light(), and GraphicsStateGuardian::slot_new_clip_plane().

PStatCollector GraphicsStateGuardian::_active_geom_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light(), and GraphicsStateGuardian::end_bind_lights().

PStatCollector GraphicsStateGuardian::_active_texusage_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::set_ambient_light().

ConstPointerTo< DisplayRegion > CRGraphicsStateGuardian::_actual_display_region [protected]
 

Definition at line 342 of file crGraphicsStateGuardian.h.

GLenum CRGraphicsStateGuardian::_alpha_func [protected]
 

Definition at line 307 of file crGraphicsStateGuardian.h.

Referenced by call_glFogEnd().

GLclampf CRGraphicsStateGuardian::_alpha_func_ref [protected]
 

Definition at line 308 of file crGraphicsStateGuardian.h.

Referenced by call_glFogEnd().

bool CRGraphicsStateGuardian::_alpha_test_enabled [protected]
 

Definition at line 327 of file crGraphicsStateGuardian.h.

PointerToArray< PlaneNode * > CRGraphicsStateGuardian::_available_clip_plane_ids [protected]
 

Definition at line 337 of file crGraphicsStateGuardian.h.

GLenum CRGraphicsStateGuardian::_blend_dest_func [protected]
 

Definition at line 300 of file crGraphicsStateGuardian.h.

Referenced by call_glLineWidth().

bool CRGraphicsStateGuardian::_blend_enabled [protected]
 

Definition at line 323 of file crGraphicsStateGuardian.h.

Referenced by enable_clip_plane().

GLenum CRGraphicsStateGuardian::_blend_source_func [protected]
 

Definition at line 299 of file crGraphicsStateGuardian.h.

Referenced by call_glLineWidth().

int GraphicsStateGuardian::_buffer_mask [protected, inherited]
 

Definition at line 242 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian7::DXGraphicsStateGuardian7(), GLGraphicsStateGuardian::reset(), reset(), DXGraphicsStateGuardian8::reset_panda_gsg(), ~CRGraphicsStateGuardian(), GLGraphicsStateGuardian::~GLGraphicsStateGuardian(), and GraphicsStateGuardian::~GraphicsStateGuardian().

GLclampf CRGraphicsStateGuardian::_clear_accum_alpha [protected]
 

Definition at line 275 of file crGraphicsStateGuardian.h.

Referenced by call_glClearStencil().

GLclampf CRGraphicsStateGuardian::_clear_accum_blue [protected]
 

Definition at line 275 of file crGraphicsStateGuardian.h.

Referenced by call_glClearStencil().

GLclampf CRGraphicsStateGuardian::_clear_accum_green [protected]
 

Definition at line 275 of file crGraphicsStateGuardian.h.

Referenced by call_glClearStencil().

GLclampf CRGraphicsStateGuardian::_clear_accum_red [protected]
 

Definition at line 275 of file crGraphicsStateGuardian.h.

Referenced by call_glClearStencil().

int GraphicsStateGuardian::_clear_buffer_type [protected, inherited]
 

Definition at line 247 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::reset().

GLclampf CRGraphicsStateGuardian::_clear_color_alpha [protected]
 

Definition at line 271 of file crGraphicsStateGuardian.h.

Referenced by call_glClearColor().

GLclampf CRGraphicsStateGuardian::_clear_color_blue [protected]
 

Definition at line 271 of file crGraphicsStateGuardian.h.

Referenced by call_glClearColor().

GLclampf CRGraphicsStateGuardian::_clear_color_green [protected]
 

Definition at line 271 of file crGraphicsStateGuardian.h.

GLclampf CRGraphicsStateGuardian::_clear_color_red [protected]
 

Definition at line 271 of file crGraphicsStateGuardian.h.

GLclampd CRGraphicsStateGuardian::_clear_depth [protected]
 

Definition at line 273 of file crGraphicsStateGuardian.h.

GLint CRGraphicsStateGuardian::_clear_stencil [protected]
 

Definition at line 274 of file crGraphicsStateGuardian.h.

Referenced by call_glClearDepth().

bool* CRGraphicsStateGuardian::_clip_plane_enabled [protected]
 

Definition at line 338 of file crGraphicsStateGuardian.h.

Referenced by enable_stencil_test().

bool GraphicsStateGuardian::_clip_planes_enabled [protected, inherited]
 

Definition at line 266 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::issue_color(), and GraphicsStateGuardian::reset().

bool GraphicsStateGuardian::_closing_gsg [protected, inherited]
 

Definition at line 281 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::GraphicsStateGuardian(), and GLGraphicsStateGuardian::prepare_texture().

ColorBlendAttrib::Mode GraphicsStateGuardian::_color_blend_mode [protected, inherited]
 

Definition at line 277 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian8::enable_blend(), and GraphicsStateGuardian::reset().

Colorf GraphicsStateGuardian::_color_clear_value [protected, inherited]
 

Definition at line 243 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::reset().

int GraphicsStateGuardian::_color_transform_enabled [protected, inherited]
 

Definition at line 272 of file graphicsStateGuardian.h.

Referenced by GLGraphicsStateGuardian::draw_point(), DXGraphicsStateGuardian7::draw_prim_setup(), GLGraphicsStateGuardian::draw_quad(), prepare_lens(), GraphicsStateGuardian::reset(), DXGraphicsStateGuardian8::transform_color(), and GraphicsStateGuardian::wants_colors().

ColorWriteAttrib::Mode GraphicsStateGuardian::_color_write_mode [protected, inherited]
 

Definition at line 276 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian8::enable_blend(), and GraphicsStateGuardian::reset().

CoordinateSystem GraphicsStateGuardian::_coordinate_system [protected, inherited]
 

Definition at line 259 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::push_frame_buffer().

bool* CRGraphicsStateGuardian::_cur_clip_plane_enabled [protected]
 

Definition at line 339 of file crGraphicsStateGuardian.h.

int CRGraphicsStateGuardian::_cur_clip_plane_id [protected]
 

Definition at line 340 of file crGraphicsStateGuardian.h.

int CRGraphicsStateGuardian::_cur_light_id [protected]
 

Definition at line 331 of file crGraphicsStateGuardian.h.

LVecBase4f GraphicsStateGuardian::_current_color_offset [protected, inherited]
 

Definition at line 273 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::reset().

LVecBase4f GraphicsStateGuardian::_current_color_scale [protected, inherited]
 

Definition at line 274 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::reset(), and GraphicsStateGuardian::wants_colors().

ConstPointerTo< DisplayRegion > GraphicsStateGuardian::_current_display_region [protected, inherited]
 

Definition at line 253 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian8::do_clear(), GraphicsStateGuardian::set_state(), and GraphicsStateGuardian::set_transform().

ConstPointerTo< Lens > GraphicsStateGuardian::_current_lens [protected, inherited]
 

Definition at line 254 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::pop_display_region(), GLGraphicsStateGuardian::prepare_display_region(), prepare_display_region(), and GraphicsStateGuardian::push_display_region().

LMatrix4f CRGraphicsStateGuardian::_current_projection_mat [protected]
 

Definition at line 333 of file crGraphicsStateGuardian.h.

int CRGraphicsStateGuardian::_decal_level [protected]
 

Definition at line 329 of file crGraphicsStateGuardian.h.

float GraphicsStateGuardian::_depth_clear_value [protected, inherited]
 

Definition at line 244 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::release_geom_node(), GraphicsStateGuardian::reset(), and DXGraphicsStateGuardian8::support_overlay_window().

GLboolean CRGraphicsStateGuardian::_depth_mask [protected]
 

Definition at line 301 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_depth_test_enabled [protected]
 

Definition at line 324 of file crGraphicsStateGuardian.h.

Referenced by enable_multisample_alpha_one().

int GraphicsStateGuardian::_display_region_stack_level [protected, inherited]
 

Definition at line 249 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::set_state(), GraphicsStateGuardian::set_transform(), and GraphicsStateGuardian::~GraphicsStateGuardian().

bool CRGraphicsStateGuardian::_dither_enabled [protected]
 

Definition at line 319 of file crGraphicsStateGuardian.h.

Referenced by enable_multisample().

bool CRGraphicsStateGuardian::_dithering_enabled [protected]
 

Definition at line 326 of file crGraphicsStateGuardian.h.

GLenum CRGraphicsStateGuardian::_draw_buffer_mode [protected]
 

Definition at line 277 of file crGraphicsStateGuardian.h.

Referenced by call_glClearAccum().

PStatCollector GraphicsStateGuardian::_draw_primitive_pcollector [static, inherited]
 

Referenced by GLGraphicsStateGuardian::draw_point(), DXGraphicsStateGuardian8::draw_point(), DXGraphicsStateGuardian7::draw_prim_inner_loop_coordtexonly(), GLGraphicsStateGuardian::draw_quad(), GLGraphicsStateGuardian::draw_sphere(), GLGraphicsStateGuardian::prepare_geom_node(), and prepare_lens().

Colorf CRGraphicsStateGuardian::_fog_color [protected]
 

Definition at line 306 of file crGraphicsStateGuardian.h.

Referenced by call_glFogStart().

GLfloat CRGraphicsStateGuardian::_fog_density [protected]
 

Definition at line 305 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_fog_enabled [protected]
 

Definition at line 325 of file crGraphicsStateGuardian.h.

Referenced by enable_multisample_alpha_mask().

GLfloat CRGraphicsStateGuardian::_fog_end [protected]
 

Definition at line 304 of file crGraphicsStateGuardian.h.

GLint CRGraphicsStateGuardian::_fog_mode [protected]
 

Definition at line 302 of file crGraphicsStateGuardian.h.

GLfloat CRGraphicsStateGuardian::_fog_start [protected]
 

Definition at line 303 of file crGraphicsStateGuardian.h.

int GraphicsStateGuardian::_frame_buffer_stack_level [protected, inherited]
 

Definition at line 250 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::get_current_display_region(), and GraphicsStateGuardian::~GraphicsStateGuardian().

PStatCollector GraphicsStateGuardian::_frustum_cull_transforms_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

PStatCollector GraphicsStateGuardian::_frustum_cull_volumes_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

PStatCollector GraphicsStateGuardian::_geom_nodes_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

bool GraphicsStateGuardian::_has_scene_graph_color [protected, inherited]
 

Definition at line 262 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::begin_decal_base_first(), GraphicsStateGuardian::depth_offset_decals(), DXGraphicsStateGuardian8::dx_init(), and GraphicsStateGuardian::reset().

int GraphicsStateGuardian::_lens_stack_level [protected, inherited]
 

Definition at line 251 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::push_display_region(), and GraphicsStateGuardian::~GraphicsStateGuardian().

bool GraphicsStateGuardian::_lighting_enabled [protected, inherited]
 

Definition at line 265 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::begin_decal_nested(), and GraphicsStateGuardian::reset().

bool CRGraphicsStateGuardian::_line_smooth_enabled [protected]
 

Definition at line 315 of file crGraphicsStateGuardian.h.

GLfloat CRGraphicsStateGuardian::_line_width [protected]
 

Definition at line 297 of file crGraphicsStateGuardian.h.

Referenced by call_glStencilOp().

GLboolean CRGraphicsStateGuardian::_lmodel_local [protected]
 

Definition at line 288 of file crGraphicsStateGuardian.h.

GLboolean CRGraphicsStateGuardian::_lmodel_twoside [protected]
 

Definition at line 289 of file crGraphicsStateGuardian.h.

Referenced by call_glViewport().

Colorf CRGraphicsStateGuardian::_material_ambient [protected]
 

Definition at line 290 of file crGraphicsStateGuardian.h.

Colorf CRGraphicsStateGuardian::_material_diffuse [protected]
 

Definition at line 291 of file crGraphicsStateGuardian.h.

Colorf CRGraphicsStateGuardian::_material_emission [protected]
 

Definition at line 294 of file crGraphicsStateGuardian.h.

float CRGraphicsStateGuardian::_material_shininess [protected]
 

Definition at line 293 of file crGraphicsStateGuardian.h.

Colorf CRGraphicsStateGuardian::_material_specular [protected]
 

Definition at line 292 of file crGraphicsStateGuardian.h.

int CRGraphicsStateGuardian::_max_clip_planes [protected]
 

Definition at line 336 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_multisample_alpha_mask_enabled [protected]
 

Definition at line 322 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_multisample_alpha_one_enabled [protected]
 

Definition at line 321 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_multisample_enabled [protected]
 

Definition at line 314 of file crGraphicsStateGuardian.h.

Referenced by call_glPolygonMode().

bool GraphicsStateGuardian::_needs_reset [protected, inherited]
 

Definition at line 280 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::GraphicsStateGuardian(), and GraphicsStateGuardian::~GraphicsStateGuardian().

PStatCollector GraphicsStateGuardian::_nodes_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

bool GraphicsStateGuardian::_normals_enabled [protected, inherited]
 

Definition at line 257 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian8::dx_init(), and GraphicsStateGuardian::reset().

GLint CRGraphicsStateGuardian::_pack_alignment [protected]
 

Definition at line 311 of file crGraphicsStateGuardian.h.

int CRGraphicsStateGuardian::_pass_number [protected]
 

Definition at line 344 of file crGraphicsStateGuardian.h.

GLfloat CRGraphicsStateGuardian::_point_size [protected]
 

Definition at line 298 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_point_smooth_enabled [protected]
 

Definition at line 316 of file crGraphicsStateGuardian.h.

GLenum CRGraphicsStateGuardian::_polygon_mode [protected]
 

Definition at line 309 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_polygon_offset_enabled [protected]
 

Definition at line 328 of file crGraphicsStateGuardian.h.

int CRGraphicsStateGuardian::_projection_mat_stack_count [protected]
 

Definition at line 334 of file crGraphicsStateGuardian.h.

GLenum CRGraphicsStateGuardian::_read_buffer_mode [protected]
 

Definition at line 278 of file crGraphicsStateGuardian.h.

PStatCollector GraphicsStateGuardian::_render_states_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

PStatCollector GraphicsStateGuardian::_render_states_unused_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

Colorf GraphicsStateGuardian::_scene_graph_color [protected, inherited]
 

Definition at line 261 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::depth_offset_decals(), DXGraphicsStateGuardian7::draw_prim_setup(), enable_polygon_offset(), and DXGraphicsStateGuardian8::transform_color().

bool GraphicsStateGuardian::_scene_graph_color_stale [protected, inherited]
 

Definition at line 263 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::begin_decal_base_first(), GraphicsStateGuardian::depth_offset_decals(), DXGraphicsStateGuardian7::draw_prim_setup(), enable_polygon_offset(), GraphicsStateGuardian::reset(), and DXGraphicsStateGuardian8::transform_color().

PointerTo< SceneSetup > GraphicsStateGuardian::_scene_setup [protected, inherited]
 

Definition at line 237 of file graphicsStateGuardian.h.

Referenced by get_internal_image_format(), GraphicsStateGuardian::get_pipe(), GraphicsStateGuardian::get_threading_model(), GLGraphicsStateGuardian::issue_alpha_test(), issue_color_write(), GLGraphicsStateGuardian::issue_cull_face(), DXGraphicsStateGuardian8::issue_depth_test(), DXGraphicsStateGuardian8::issue_depth_write(), issue_depth_write(), issue_fog(), and DXGraphicsStateGuardian8::issue_render_mode().

bool CRGraphicsStateGuardian::_scissor_enabled [protected]
 

Definition at line 317 of file crGraphicsStateGuardian.h.

GLsizei CRGraphicsStateGuardian::_scissor_height [protected]
 

Definition at line 283 of file crGraphicsStateGuardian.h.

GLsizei CRGraphicsStateGuardian::_scissor_width [protected]
 

Definition at line 282 of file crGraphicsStateGuardian.h.

GLint CRGraphicsStateGuardian::_scissor_x [protected]
 

Definition at line 280 of file crGraphicsStateGuardian.h.

GLint CRGraphicsStateGuardian::_scissor_y [protected]
 

Definition at line 281 of file crGraphicsStateGuardian.h.

PStatCollector GraphicsStateGuardian::_set_state_pcollector [static, inherited]
 

GLenum CRGraphicsStateGuardian::_shade_model_mode [protected]
 

Definition at line 279 of file crGraphicsStateGuardian.h.

ConstPointerTo< RenderState > GraphicsStateGuardian::_state [protected, inherited]
 

Definition at line 239 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::clear(), GLGraphicsStateGuardian::draw_sprite(), DXGraphicsStateGuardian8::draw_sprite(), DXGraphicsStateGuardian7::draw_sprite(), RIBGraphicsStateGuardian::reset_file(), and GraphicsStateGuardian::~GraphicsStateGuardian().

PStatCollector GraphicsStateGuardian::_state_changes_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

bool GraphicsStateGuardian::_stencil_clear_value [protected, inherited]
 

Definition at line 245 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::reset(), and DXGraphicsStateGuardian8::support_overlay_window().

GLenum CRGraphicsStateGuardian::_stencil_func [protected]
 

Definition at line 295 of file crGraphicsStateGuardian.h.

GLenum CRGraphicsStateGuardian::_stencil_op [protected]
 

Definition at line 296 of file crGraphicsStateGuardian.h.

bool CRGraphicsStateGuardian::_stencil_test_enabled [protected]
 

Definition at line 320 of file crGraphicsStateGuardian.h.

Referenced by enable_line_smooth().

PStatCollector GraphicsStateGuardian::_texmgrmem_resident_pcollector [static, inherited]
 

PStatCollector GraphicsStateGuardian::_texmgrmem_total_pcollector [static, inherited]
 

PStatCollector GraphicsStateGuardian::_texture_state_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

bool CRGraphicsStateGuardian::_texturing_enabled [protected]
 

Definition at line 318 of file crGraphicsStateGuardian.h.

Referenced by enable_point_smooth().

PStatCollector GraphicsStateGuardian::_total_geom_node_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::bind_light(), and GraphicsStateGuardian::slot_new_light().

PStatCollector GraphicsStateGuardian::_total_geom_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::bind_light().

PStatCollector GraphicsStateGuardian::_total_texmem_pcollector [static, inherited]
 

PStatCollector GraphicsStateGuardian::_total_texusage_pcollector [static, inherited]
 

ConstPointerTo< TransformState > GraphicsStateGuardian::_transform [protected, inherited]
 

Definition at line 240 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::~GraphicsStateGuardian().

PStatCollector GraphicsStateGuardian::_transform_state_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_clip_planes(), and GraphicsStateGuardian::enable_light().

PStatCollector GraphicsStateGuardian::_transform_states_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

PStatCollector GraphicsStateGuardian::_transform_states_unused_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light().

TransparencyAttrib::Mode GraphicsStateGuardian::_transparency_mode [protected, inherited]
 

Definition at line 278 of file graphicsStateGuardian.h.

Referenced by DXGraphicsStateGuardian8::enable_blend(), and GraphicsStateGuardian::reset().

TypeHandle CRGraphicsStateGuardian::_type_handle [static, private]
 

Reimplemented from GraphicsStateGuardian.

Definition at line 86 of file crGraphicsStateGuardian.cxx.

GLint CRGraphicsStateGuardian::_unpack_alignment [protected]
 

Definition at line 312 of file crGraphicsStateGuardian.h.

PStatCollector GraphicsStateGuardian::_used_texmem_pcollector [static, inherited]
 

bool GraphicsStateGuardian::_vertex_colors_enabled [protected, inherited]
 

Definition at line 264 of file graphicsStateGuardian.h.

Referenced by GraphicsStateGuardian::begin_decal_base_first(), GraphicsStateGuardian::depth_offset_decals(), and GraphicsStateGuardian::reset().

PStatCollector CRGraphicsStateGuardian::_vertices_display_list_pcollector [static]
 

Definition at line 355 of file crGraphicsStateGuardian.h.

PStatCollector GraphicsStateGuardian::_vertices_other_pcollector [static, inherited]
 

Referenced by GLGraphicsStateGuardian::draw_point(), DXGraphicsStateGuardian8::draw_point(), DXGraphicsStateGuardian7::draw_prim_inner_loop_coordtexonly(), GraphicsStateGuardian::enable_light(), prepare_lens(), and release_texture().

PStatCollector GraphicsStateGuardian::_vertices_pcollector [static, inherited]
 

PStatCollector GraphicsStateGuardian::_vertices_tri_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light(), and release_texture().

PStatCollector GraphicsStateGuardian::_vertices_trifan_pcollector [static, inherited]
 

Referenced by GraphicsStateGuardian::enable_light(), and release_texture().

PStatCollector GraphicsStateGuardian::_vertices_tristrip_pcollector [static, inherited]
 

Referenced by GLGraphicsStateGuardian::draw_quad(), GraphicsStateGuardian::enable_light(), and release_texture().

GLsizei CRGraphicsStateGuardian::_viewport_height [protected]
 

Definition at line 287 of file crGraphicsStateGuardian.h.

GLsizei CRGraphicsStateGuardian::_viewport_width [protected]
 

Definition at line 286 of file crGraphicsStateGuardian.h.

GLint CRGraphicsStateGuardian::_viewport_x [protected]
 

Definition at line 284 of file crGraphicsStateGuardian.h.

GLint CRGraphicsStateGuardian::_viewport_y [protected]
 

Definition at line 285 of file crGraphicsStateGuardian.h.


The documentation for this class was generated from the following files:
Generated on Fri May 2 00:48:56 2003 for Panda by doxygen1.3